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.1.tar.gz (42.1 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: thick2d-1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 fa6b2059d90b4642a410ce2e2549b29acd5157ec2d0e08380424865891976305
MD5 d86ef2a320351a0044a06dbf47111cd5
BLAKE2b-256 bbd0fb0bb8bb599f671aa0f5599265c1ab7fde66252ac48dea420559356297ee

See more details on using hashes here.

File details

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

File metadata

  • Download URL: thick2d-1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 14fea26c479e9c7237d59346e54dc013b22da4a803f965e01327ce9883d592e3
MD5 11aaf51182ae193180f317de3a1f3640
BLAKE2b-256 1fdcc630f486a7cefc12806f2957c80fab8adcbf24dac1344444263d8ef67ca4

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