Sitemap
A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.
Pages
Posts
OpenFOAM Variants: A Comprehensive Summary
Published:
OpenFOAM (Open Field Operation And Manipulation) is a widely-used open source computational fluid dynamics (CFD) software that has evolved into several distinct variants over its development history. There are indeed three main branches of OpenFOAM: the Foundation version (OpenFOAM.org) developed by CFD Direct, the ESI-OpenCFD commercial fork (OpenFOAM.com), and the community-driven foam-extend project. Each variant has different focuses, release schedules, and specialized features tailored to different user communities ranging from academia to industry applications.
GSoC Week 5: The Hardware-Aware Mindset for High-Performance C++
Published:
Refactoring SU2 code taught me that nested std::vector<std::vector
Deploy Quarto Presentations to GitHub Pages
Published:
This guide provides step-by-step instructions for creating and hosting Quarto presentations on GitHub Pages.
GSoC Week 4: Best Practices for Integrating Optional Third-Party Libraries in C++: A Case Study with the Tracy Profiler
Published:
Integrating optional third-party libraries into large C++ projects can be tricky. This post outlines a clean, maintainable approach using conditional compilation, with a case study based on adding the Tracy profiler to SU2 during Google Summer of Code.
GSoC Week 3: Profiling SU2 with Tracy
Published:
In this blog post, I explore integrating Tracy Profiler with SU2 for my Google Summer of Code project. I detail the setup of Tracy’s client and server, instrumenting functions, and leveraging its low-overhead, real-time visualization to optimize performance in SU2 simulations.
GSoC Week 2: Investigating Performance Bottlenecks in SU2
Published:
This post explores how I used gprof, valgrind, and kcachegrind to identify and analyze performance bottlenecks in SU2, focusing on the neural network module. The approach is generalizable to other large C++ projects.
GSoC Week 1: Setting up the Development Environment for Productive Coding
Published:
A step-by-step guide for beginners to set up a modern development environment for contributing to large open-source C++ projects using GitHub, VS Code, GDB, and gprof.
GSoC Week 0: Getting Started with Stitching SU2
Published:
Week 0 of GSoC: Community Bonding, Setting Up the SU2 Development Environment, and Exploring the Codebase
Understanding Proxy Configuration Methods in Ubuntu: A Comprehensive Guide
Published:
Setting up proxy servers in Ubuntu can be done through multiple approaches, each serving different purposes and affecting different parts of the system. In this guide, we’ll explore all available methods, understand their differences, and learn how to configure proxy settings for specific applications.
Making Remote Access Easy: A Simple SSH Guide
Published:
Making Remote Access Easy: A Simple SSH Guide
Installing AMGX on Your Computer
Published:
This guide provides a step-by-step approach to installing AMGX on your system. The installation has been tested on:
- Ubuntu 20.04.5 LTS
- CentOS Linux 7 (Core)
Using Eigen to Solve the Pressure Poisson Equation
Published:
When developing Computational Fluid Dynamics (CFD) solvers, one frequently encounters the pressure Poisson equation. This equation typically results in a large sparse system of linear equations (Ax=b) that needs to be solved efficiently. In this post, I’ll explain how to use the Eigen C++ library to solve such systems, particularly when your matrix is stored in the Compressed Row Storage (CRS) format.
Understanding Cell Selection in OpenFOAM: From Code to Visualization
Published:
When working with Computational Fluid Dynamics (CFD), we often need to focus on specific regions of our mesh for detailed analysis. OpenFOAM provides powerful tools for this purpose, but creating custom applications gives us more control over how we select and analyze these regions. In this guide, we’ll explore how to create a tool that selects cells within a specified region and visualize them effectively.
Adding Giscus Comments to Your Academic Pages Website
Published:
If you’ve forked the Academic Pages template for your GitHub Pages website and want to add a commenting system, Giscus is an excellent choice. This guide will walk you through setting up Giscus comments on your Academic Pages website.
Remote Data Visualization with ParaView: A Quick Guide
Published:
ParaView is a powerful visualization tool, but working with remote data requires careful consideration. Here are the main approaches ranked by efficiency and usability:
Installing OpenFOAM Behind a Proxy: A Complete Guide
Published:
When trying to install OpenFOAM on Ubuntu/Debian systems behind a proxy server (especially institutional proxies), users often encounter SSL connection issues. This guide provides a step-by-step solution to successfully install OpenFOAM in such environments.
portfolio
Geometry Generator Scripts: Learning Shell Scripting
Published:
A collection of Bash scripts developed during my Masters for learning shell scripting, focusing on automated geometry generation for OpenFOAM cases using GMSH.
Fluid-Structure Interaction Using Lattice Boltzmann Method
Published:
A Lattice Boltzmann Method implementation for simulating falling elliptical cylinder dynamics in fluid flow.
Immersed Boundary Method for Cilia & Particles using Lattice Spring Method
Published:
A high-performance computational fluid dynamics framework for simulating fluid-structure interactions with cilia and deformable particles.
OpenFOAM Integration with Fortran Solid Solver using Immersed Boundary Method
Published:
A custom OpenFOAM solver that integrates a Fortran-based 3D solid mechanics solver for fluid-structure interaction simulations using the Immersed Boundary Method.
A Boundary Element Method (BEM) Solver
Published:
Solves the 2D Laplace equation on a circular surface using using the Boundary Integral Method.
libaxb: High-Performance Linear System Solver Wrapper
Published:
A C++/Fortran library for solving sparse linear systems using BiCGSTAB with ILU preconditioning, featuring OpenMP parallelization and a robust CRS format matrix input system.
Machine Learning-Based Estimation of Superdroplet Growth Rates
Published:
A Python-based machine learning framework for parameterizing superdroplet growth in cloud microphysics models, leveraging high-fidelity Direct Numerical Simulation (DNS) data.
FEM Simulation of Large Deformations in 2D and 3D Structures
Published:
A MATLAB and Fortran-based Finite Element Method (FEM) library for simulating large deformations in 2D and 3D geometries.
publications
Paper Title Number 1
Published in Journal 1, 2009
This paper is about the number 1. The number 2 is left for future work.
Recommended citation: Your Name, You. (2009). "Paper Title Number 1." Journal 1. 1(1).
Download Paper | Download Slides
Paper Title Number 2
Published in Journal 1, 2010
This paper is about the number 2. The number 3 is left for future work.
Recommended citation: Your Name, You. (2010). "Paper Title Number 2." Journal 1. 1(2).
Download Paper | Download Slides
Paper Title Number 3
Published in Journal 1, 2015
This paper is about the number 3. The number 4 is left for future work.
Recommended citation: Your Name, You. (2015). "Paper Title Number 3." Journal 1. 1(3).
Download Paper | Download Slides
Paper Title Number 4
Published in GitHub Journal of Bugs, 2024
This paper is about fixing template issue #693.
Recommended citation: Your Name, You. (2024). "Paper Title Number 3." GitHub Journal of Bugs. 1(3).
Download Paper
talks
Talk 1 on Relevant Topic in Your Field
Published:
This is a description of your talk, which is a markdown files that can be all markdown-ified like any other post. Yay markdown!
Conference Proceeding talk 3 on Relevant Topic in Your Field
Published:
This is a description of your conference proceedings talk, note the different field in type. You can put anything in this field.
teaching
Teaching experience 1
Undergraduate course, University 1, Department, 2014
This is a description of a teaching experience. You can use markdown like any other post.
Teaching experience 2
Workshop, University 1, Department, 2015
This is a description of a teaching experience. You can use markdown like any other post.