DIY
This page documents my journey through essentials of molecular simulations, machine learning, and scientific computing. My objective is to understand the underlying algorithms by coding their core building blocks from scratch. As it scales, this resource evolves into a turnkey onboarding document for my future trainees
In areas where I’m still building foundational knowledge — such as quantum chemistry, machine learning interatomic potentials, parallel programming, and large language models (LLMs) — the content will mainly consist of structured notes and accompanying code snippets borrowed from online courses and tutorials.
Molecular Dynamics Simulation with Lennard-Jones Potential
This project implements a molecular dynamics simulation framework using the Lennard-Jones potential to model particle interactions. Molecular Dynamics (MD) simulations are a powerful computational technique used in physics, chemistry, and materials science to study the physical movements of atoms and molecules.
Time and Space Complexity in Molecular Simulations
A script that processes solvation shells around a small molecule in seconds might require hours of wall-clock time to capture similar phenomena around a large surface formed by, say, a long-sequenced folded protein or a polymeric membrane. Worse yet, it may culminate in “out-of-memory” crashes during the loading of those massive structures. Been there? To address these bottlenecks, we must understand the hardware and algorithmic underpinnings behind these performance losses and outright failures.
Everyday Essentials
A curated collection of useful information I refer to daily — from basic English grammar to terminal commands and keyboard shortcuts. This serves as a quick reference guide for common tasks and tools.
Conda environments
Managing dependencies is one of the most challenging aspects of any software project. Individual dependencies often come with their own requirements, which can conflict with other projects or even with the operating system itself.
ML-CPP: Machine Learning Library with C++ Backend
ML-CPP is a high-performance machine learning library that combines the computational efficiency of C++ with the user-friendly interface of Python. The project demonstrates how to bridge these two worlds effectively, creating a machine learning framework that’s both powerful and easy to use.