This repository contains Jupyter notebooks and Python scripts tailored for applications in Materials Science. The tutorials are designed to guide you through the essential Python tools and libraries used in computational materials research.
The tutorial is divided into the following modules:
Module 1: Basics of Python (Week- 1 and 2)
- Setting up a virtual environment
- Understanding variables and data types
- Using loops and conditionals
- Writing functions
- Best Python practises
Module 2: Regular Expressions (Week-3)
- Pattern matching and text processing
Module 3: Data Analysis with Pandas and Numpy (Week-4)
- Handling and analyzing structured data
- Performing mathematical operations on arrays
Module 4: Pymatgen (Python Materials Genomics) (Week-5 and 6)
- Working with crystallographic data
- Generating and analyzing material structures
Module 5: Advanced Materials Science Libraries (Week-7 and 8)
- SMACT
- ElementEmbeddings
- CrystalLLM
- SkipAtom
- Chemeleon
Module 6: Accessing Materials Data (Week-9)
- Data retrieval using API (Materials Project and Optimade)
Module 7: Matminer (Week-10)
- Feature engineering for machine learning in materials science
- Accessing pre-built datasets
Module 8: Object Oriented Programming in Python (Week-12)
I will be creating and updating notebooks for each topic weekly, documenting everything I learnt as a beginner. This process will take time as I have to start making notebooks from scratch. I aim to complete all topics within 12 weeks. I expect to upload the first Notebook on 2nd week of May 2025.
Feel free to explore the repository and use the provided tutorials as a guide to enhance your knowledge in computational materials science!
Suhas Adiga
Theoretical Sciences Unit
JNCASR, Bengaluru, India
📧 [email protected]