Skip to main content

"THICK-2D -- Thickness Hierarchy Inference & Calculation Kit for 2D materials",

Project description

THICK2D - Thickness Hierarchy Inference & Calculation Kit for 2D Materials

THICK2D is a Python-based computational toolkit designed to accurately predict the thickness of two-dimensional (2D) materials using only the crystal structure information. Utilizing state-of-the-art algorithms, advanced machine learning architecture, and integrating seamlessly with widely recognized electronic structure codes such as VASP and QE, THICK2D offers researchers a robust platform for the precise determination and analysis of thickness of 2D material.

Feature and Importance of THICK2D

The thickness-dependent behavior of 2D materials is now recongnized as a fundamental property. The unique structure of 2D materials, characterized by their inherent vacuum along the z-axis, presents a challenge in directly measuring thickness. Yet, understanding the thickness is crucial for various applications, from electronics and energy storage to the development of new nanotechnologies. THICK2D addresses this challenge by leveraging advanced machine learning models, which are trained on experimentally determined thicknesses, to accurately predict the thickness of any 2D material. This innovative approach ensures THICK2D's robustness, requiring only the crystal structure information for thickness prediction. For users seeking more precise analyses, THICK2D also offers the option to first optimize the structure using VASP or QE, enhancing the accuracy of thickness computation.

THICK2D Calculators

Leveraging the power of VASP and QE, THICK2D ensures high-precision calculations. These electronic structure codes, coupled with the toolkit's advanced algorithms, allow for detailed material analysis, making THICK2D a valuable tool in the study of 2D materials.

Installation

THICK2D is easy to install and supports various installation methods to accommodate different user preferences. The installation process automatically handles all dependencies.

  1. Using pip:

    • Install the latest version of THICK2D using pip:
      pip install -U thick2d
      
  2. From Source Code:

    • Download the source code:
      git clone [git@github.com:gmp007/thick2d.git]
      
    • Install THICK2D by navigating to the directory and running:
      pip install .
      
  3. Installation via setup.py:

    • Use the setup.py script for installation:
      python setup.py install [--prefix=/path/to/install/]
      
    • This method is especially useful for users with restricted administrative privileges, such as on shared HPC systems.

Usage and Running THICK2D

To get started with THICK2D, follow these steps:

  1. Create a Calculation Directory:

    • Prepare a directory for your calculations.
    • Run thick2d -0 to generate the main input template, thick2dtool.in.
  2. Configure Input Files:

    • Adjust the generated files according to your project's needs, specifying the calculator (VASP or QE) and potential file directory (This is needed only if you want to optimize the structure before computing the thickness. The flag optimize must be set to true). A sample thick2dtool.in is as shown below.
       ########################################
       ###  THICK2D  package input control   ###
       ########################################
       #choose stress calculator: VASP/QE currently supported
       code_type = vasp
       
       # Method of AI/ML training
       use_dnn = False
       
       #Use pre-trained model
       use_ml_model = False
       
       #Running over many structures
       throughput = False
       
       #structure file name with .cif or .vasp
       structure_file = filename.cif
       
       # Optimize structure
       optimize = False
       
       #No of layers
       nlayers = 1
       
       # van der Waals gap
       vdwgap = 3.5
       
       #explicit potential directory
       potential_dir = /potential
       
       #Synthethic data for ML
       num_augmented_samples = 50
       
       #Augment thickness data from mat_thickness.txt
       add_thickness_data = False
       
       #job submission command
       job_submit_command = vasp_cmd/pw.x > log
      
  3. Start the Calculation:

    • Launch THICK2D by running the command thick2d in your calculation direction to begin the thickness measurement process.
    • If you want to predict thickness for many structures, you can benefit from using the high-throughput option.

For many structures or in high-throughput materials screening and design.

  • If you want to predict thickness for many structures, you can benefit from using the high-throughput option. Set the flag throughput to true.
  • Copy the accompanying pre-computed machine learning models into the folder ml_model or, if you have performed the machine learning training yourself, this folder is automatically generated in your working folder.
  • Generate the generate the auxillary python code called throughput_thickness_calc.py as thick2d -0 -aux or copy it from the accompanying auxillaryfile folder.
  • Run the auxiliary Python code as python throughput_thickness_calc.py <cif_directory> <control_file_directory>, where <control_file_directory> is the location of the thick2dtool.in main THICK2D control parameter.

For detailed instructions, refer to the examples provided with the toolkit.

Citing THICK2D

If THICK2D contributes to your research, please cite:

@article{ekuma2024,
  title={THICK2D: Thickness Hierarchy Inference and Calculation Kit for 2D Materials},
  journal={Journal Name},
  volume={xx},
  pages={xx-xx},
  year={2024},
  doi={http://dx.doi.org/xx.xxxx/xxxxxx},
  author={Your Name and Collaborators},
}
@misc{PropertyExtractor,
  author = {Chinedu Ekuma},
  title = {THICK2D -- Thickness Hierarchy Inference & Calculation Kit for 2D Materials},
  year = {2024},
  howpublished = {\url{https://github.com/gmp007/thick2d}},
  note = {Open source computational toolkit using advanced machine learning to predict thickness of 2D-based materials},
}

Contact Information

We welcome your feedback and inquiries.

License

This project is licensed under the GNU GPL version 3 - see the LICENSE file for details.

License

This project is licensed under the GNU GPL version 3 - see the LICENSE file for details.

Acknowledgments

  • This work was supported by the U.S. Department of Energy, Office of Science, Basic Energy Sciences under Award DOE-SC0024099.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

thick2d-1.0.tar.gz (42.1 kB view details)

Uploaded Source

Built Distribution

thick2d-1.0-py3-none-any.whl (45.2 kB view details)

Uploaded Python 3

File details

Details for the file thick2d-1.0.tar.gz.

File metadata

  • Download URL: thick2d-1.0.tar.gz
  • Upload date:
  • Size: 42.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for thick2d-1.0.tar.gz
Algorithm Hash digest
SHA256 21d4e2b21b05b4ddff541a42e4c0af224125091f6581747a957c65ad36b08b6f
MD5 8221ddbae059f3c9b07ab64de6bb316a
BLAKE2b-256 1cdefb32e0df3e35141896086493c514bded3375bfddd779a09ec48fdb5d1e13

See more details on using hashes here.

File details

Details for the file thick2d-1.0-py3-none-any.whl.

File metadata

  • Download URL: thick2d-1.0-py3-none-any.whl
  • Upload date:
  • Size: 45.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for thick2d-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b6737529e6945269336777303117b92d4e038b787f231778959a95cd13273fa6
MD5 efd43d342dacd365c2ca4264c97ec549
BLAKE2b-256 ffdc33f55c6ae53c7df2186840b980c634689dc34ee0f0e7aa279b0d8f3da7f3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page