
Harish Ragul
Rajaramaduraikarthik
Building numerical solvers for incompressible flows — from finite element methods to Navier–Stokes — with a long-term goal of PhD and postdoctoral research in CFD.

Key Projects
Research & Engineering Work
Each project combines rigorous theory with working implementations — solver code, deployed applications, and open-source contributions.
FEniCS Heat Conduction Web Solver
Finite element solution of the 2-D steady-state heat equation with spatially varying conductivity and all three standard boundary condition types. Full-stack delivery: Python solver back-end with a Django front-end; results plotted inline.
CFD Solver Suite — Cavity, Cylinder & Airfoil
A structured Python solver programme — from 1-D diffusion to validated lid-driven cavity flow (Ghia et al., 1982), von Kármán cylinder wake, and NACA 0012 airfoil — 21 working notebooks.
Quadcopter Inertial Navigation System
Real-time attitude estimator fusing accelerometer and gyroscope data from an MPU-6050 IMU using rigid-body kinematics and Newton–Euler dynamics. Custom MicroPython driver for the RP2040 microcontroller.
Academic Background
Education
M.E. Thermal Engineering
- ›Discretised the steady-state heat conduction equation using FEM and solved it with FEniCS for spatially varying conductivity and mixed boundary conditions (Dirichlet, Neumann, Robin).
- ›Packaged the solver as a Django web application — users configure material parameters and boundary conditions through a browser interface with inline result plotting.
B.E. Aerospace Engineering
- ›Applied rigid-body kinematics and Newton–Euler dynamics to design a real-time attitude estimator fusing accelerometer and gyroscope data from an MPU-6050 IMU.
- ›Wrote a custom MicroPython IMU driver for the Raspberry Pi Pico (RP2040); published on GitHub and adopted by external developers.
- ›Interfaced navigation output with a Pixhawk flight controller to close the stabilisation loop.
Experience
Professional & Research
Industry work provides deep computational software engineering skills — directly applicable to building research infrastructure and production-grade numerical solvers.
Lead Software Developer — AI & Data Systems
- ›Developed enterprise Generative AI solutions using LangChain and LangGraph; built multi-agent AI architectures.
- ›Implemented Retrieval-Augmented Generation (RAG) pipelines integrating vector databases and Neo4j.
- ›Built real-time voice AI agents using Pipecat with streaming LLM inference.
- ›Engineered scalable ETL pipelines using Prefect, Dask, and PySpark; deployed on Azure with Docker and CI/CD.
Incompressible Flow Solver Development
- ›Built a systematic series of NS solvers in Python/NumPy: 1-D diffusion, 2-D scalar transport (FDM), FVM, projection method, and SIMPLE algorithm — 21 working notebooks across Modules 1 & 2 (tests: 8.5/10 and 83%).
- ›Lid-driven cavity (Re=100, 41×41 grid) validated against Ghia et al. (1982); flow over a cylinder (220×100 grid, immersed boundary method) capturing von Kármán vortex shedding; NACA 0012 airfoil at AoA=5° with angle-of-attack sweep.
- ›Turbulence modelling complete (Module 3.18, 17/20 = 85%): k-ε transport equations, k-ω SST blending, wall functions, y⁺ and turbulent channel simulation. OpenFOAM learning started (openform-learning repo): case structure, icoFoam lid-driven cavity (Re=10 and Re=100), Co>1 diagnosis, ParaView visualisation — Modules 1 & 2 complete.
Junior Software Developer — Python
- ›Built and maintained backend services in Django and Flask: REST APIs, relational database design (PostgreSQL, MySQL), and payment gateway integrations.
- ›Developed analytics and reporting pipelines in Pandas and SQL running daily on production data.
- ›Participated in code reviews and sprint planning — developed habits of readable, maintainable code.
Technical Toolkit
Skills & Tools
Numerical & Computational Methods
- Finite Element Method (FEniCS / FEniCSx)
- Finite Difference Method
- Finite Volume Method
- SIMPLE Algorithm
- Projection Method
- Staggered Grid Formulation
CFD & Simulation
- Python-based NS solver development
- Immersed boundary method
- Navier–Stokes discretisation (FDM / FVM)
- Benchmark validation (Ghia et al., 1982)
- OpenFOAM (icoFoam, case setup, ParaView — Modules 1 & 2)
- Turbulence models — k-ε, k-ω SST (theory complete)
Programming & Software
- Python (advanced — NumPy, SciPy, Matplotlib)
- Django, Flask (full-stack web apps)
- C / C++ (basic)
- SQL (PostgreSQL, MySQL)
- Git & GitHub
- MicroPython
Mechanics & Dynamics
- Rigid-body kinematics
- Newton–Euler dynamics
- Sensor fusion (IMU, complementary filter)
- Inertial navigation
- Thermodynamics & Heat Transfer
Embedded Systems
- Raspberry Pi Pico (RP2040)
- MPU-6050 IMU (I²C protocol)
- Pixhawk flight controller
- MicroPython driver development
AI / ML & Data Engineering
- LangChain, LangGraph, RAG pipelines
- Vector databases, Neo4j
- PySpark, Dask, Prefect (ETL)
- Azure, Docker, CI/CD
Writing
Research Notes
Technical notes on solver derivations, numerical methods, and CFD case studies — written to build depth and share understanding.
The SIMPLE Algorithm on a Staggered Grid
A detailed walkthrough of the SIMPLE (Semi-Implicit Method for Pressure-Linked Equations) algorithm — the pressure-velocity coupling scheme at the heart of most steady incompressible flow solvers, including OpenFOAM's simpleFoam.
Projection Method for Incompressible Navier–Stokes: Step by Step
A clear derivation of Chorin's fractional step (projection) method for incompressible flow — showing how to split the momentum and pressure equations and enforce the divergence-free constraint.
From PDE to FEniCS: Solving Heat Conduction with Finite Elements
A step-by-step walkthrough of how the 2-D steady-state heat equation is transformed from its strong form into a finite element discretisation and solved in FEniCS — the core of my M.E. thesis.
Get in Touch
Contact
I am actively seeking PhD positions and research collaborations in CFD and computational mechanics. If you work in these areas, I would be glad to connect.