Programming & Scientific Computing
This section brings together a selection of my programming work in C and Python, including NumPy, pandas, Matplotlib, and SciPy. It covers coursework exercises, independent practice, and computational workflows developed for research, experiments, thesis work, and manuscript preparation.
Some of these examples originated from Computer Programming (ME 2221) and its sessional course (ME 2222), as well as Numerical Computation for Mechanical Engineers (ME 3121) and its sessional course (ME 3122). Links to the corresponding coursework details are provided.
The collection covers the following topics:
- Atomistic geometry, notch construction, stress-field post-processing, and other LAMMPS data-processing workflows.
- Numerical integration, iterative solvers, and heat-transfer calculations.
- Experimental calculations, curve fitting, and scientific plotting.
- Data exploration and machine-learning exercises, including tutorial-based work.
- C programming involving pointers, matrices, dynamic memory allocation, records, and file handling.
Featured Code Examples
Constructing notches and plotting stress fields
Atomic selection and stress contours in Ti₂N MXene.
Generating graphene and hBN sheets
Pristine geometries, periodic lattice checks and LAMMPS data files.
Solving nonlinear fracture equations
NLFM and a quantized-length correction with dimensionless example parameters.
Numerical methods and heat transfer
Runge-Kutta integration, boundary-value problems and blackbody spectra.
Scientific plotting
Contours, surfaces, scatter plots and grouped comparisons.
Exploring data with Pandas
Player statistics, grouped tables and salary plotting exercises.
Modulus and curve integration
Composite calculations, shown with generated example data.