Contents
-
Introduction to Python Programming
- Overview of Python and its applications in science and engineering
-
Setting Up the Development Environment
- Hands-on with VS Code and JupyterLab
- Simple practices for writing and running Python code
-
Basic Python Programming
- Variables, data types, strings, lists, dictionaries
- Conditional statements and loops
- Writing and using functions, etc.
-
Intermediate and Advanced Python
- Introduction to classes and object-oriented programming
- Common algorithms: sorting, searching, and recursion
- File I/O and exception handling, etc.
-
Data Visualization with Matplotlib
- Introduction to Matplotlib and plotting basics
- Creating effective and publication-quality scientific plots
- Introduction to other libraries (e.g., Seaborn, etc.)
-
Introduction to Machine Learning and Neural Networks
- Key concepts in machine learning
- Architecture of artificial neural networks (ANNs)
-
Architecture of artificial neural networks (ANNs)
- Implementing a basic ANN using only Python and NumPy
- Hands-on training and testing with small datasets
-
Advanced Neural Networks with TensorFlow or PyTorch
- Building deep neural networks with TensorFlow or PyTorch
- Training, evaluation, and model optimization
-
Python for Materials Science
- Introduction to computational materials science
- Using Python to preprocess, postprocess, and visualize DFT data
- Practical example: analyzing band structures or density of states