Ritoban Roy-Chowdhury
I am a undergraduate student double majoring in Computer Science and Mathematics at the University of California, San Diego. I do research advised by Albert Chern at the Center for Visual Computing, working on Computer Graphics, particularly structure-preserving fluid simulation algorithms.
In Summer 2025, I interned at Sandia National Labs working on research on scientific machine learning for dissipative systems described by Onsager's Variational Principle, like the Cahn-Hilliard equations applied to modelling block copolymers. I was supported by the M2dt: Multifaceted Mathematics for Predictive Digital Twins project, and was advised by Anthony Gruber, Irina Tezaur, and Nathan Urban.
Previously, in high school and my first year of college, I worked at the University of California, Riverside with Tamar Shinar and Craig Schroeder, on interpolation algorithms for divergence and curl free vector fields, as well as geometric machine learning algorithms for reconstructing surfaces from point clouds.
Email: rroychowdhury-at-ucsd-dot-edu
CV /
GitHub /
Google Scholar /
LinkedIn
|
|
Research
I'm interested in mathematical applications of computing -- scientific computing, physics simulations, geometry processing algorithms, and machine learning. I'm passionate about beautiful mathematical ideas, sharing them with other people, developing algorithms that use them, and using that to build interesting programs.
I'm particularly excited when I can bring ideas from pure mathematics and apply them to computational problems with a physical flavor. Recently, that's often meant differential geometry and the calculus of variations applied to fluid simulation and other partial differential equations. But I'm curious about and have explored mathematics both with a more analytic flavor (optimal transport, ergodic theory, stochastic calculus) as well as algebro-geometric (complex differential geometry, sheaf and cohomology theory, characteristic classes) -- and I hope to apply them to interesting computational problems in the future!
|
|
Hamiltonian Fluids from Sub-Riemannian Geometry
Ritoban Roy-Chowdhury
CSE Honors Program, 2025
We explore a novel approach to preserving the Hamiltonian structure of ideal fluids: we discretize the Koopman operator of the flow map. Because incompressible fluid flow is described by a volume-preserving diffeomorphism, its Koopman operator is orthogonal. Motivated by this, one might seek to spatially discretize flow maps as orthogonal matrices, and model an ideal fluid by a least action principle on O(n). To make this work, one picks a finite element space for velocities, and because this velocity space is not closed under Lie brackets, the resulting spatially discrete fluid model is non-holonomically constrained. Sub-Riemannian geometry is precisely the study of such systems, and the normal sub-Riemannian geodesic equations yield a natural Hamiltonian structure-preserving discretization.
|
|
Onsager's Variational Principle for Solving Inverse Problems
Ritoban Roy-Chowdhury, Irina Tezaur, Nathan Urban, Anthony Gruber
Sandia CSRI Summer Proceedings, 2025
paper /
We consider Onsager’s variational principle, which describes thermodynamic systems that are dissipation dominated. The principle describes the dynamics of a system as the minimizer of a functional balancing the decay of free energy and the dissipative force, and we develop an unconditionally energy stable time discretization based on it. Within this framework, we allow the free energy and dissipation potential functionals to be parametrized by learnable weights. By optimizing these weights so that the resulting simulation matches training data, we can tackle inverse or system identification problems that can recover features of dynamics that may not be known in advance. We illustrate our method on several problems using synthetic data, with a particular interest towards phase field models used in modelling block copolymers.
|
|
Fluid Implicit Particles on Coadjoint Oribts
Mohammad Sina Nabizadeh, Ritoban Roy-Chowdhury, Hang Yin, Ravi Ramamoorthi, Albert Chern
SIGGRAPH Asia, 2024
Best Paper (Honorable Mention)
paper /
arxiv /
website /
youtube /
We propose Coadjoint Orbit FLIP (CO-FLIP), a high order accurate, structure preserving fluid simulation method in the hybrid Eulerian-Lagrangian framework. Using a discrete Hamiltonian formulation we achieve energy and Casimir preservation; formally, the flow evolves on infinite-dimensional coadjoint orbits. We show that the method produces benchmarks and turbulent visual effects even at low grid resolutions.
|
|
Higher order divergence-free and curl-free interpolation on MAC grids
Ritoban Roy-Chowdhury, Tamar Shinar, Craig Schroeder
Journal of Computational Physics, 2024
paper /
code /
Building on our prior divergence-free interpolation paper, (1) we design a divergence-free interpolation scheme that preserves the discrete flux, (2) we adapt the general construction of divergence-free fields into a general construction for curl-free fields, (3) we extend the framework to a more general class of finite difference discretizations, and (4) we use this flexibility to construct fourth-order accurate interpolation schemes for the divergence-free case and the curl-free case.
|
|
Local divergence-free polynomial interpolation on MAC grids
Craig Schroeder, Ritoban Roy Chowdhury, Tamar Shinar
Journal of Computational Physics, 2022
paper /
code /
In discretizations of partial differential equations, diveregence free vector fields are often obtained by solving a linear system, resulting in a discrete approximation of the continuous field that is discretely divergence-free. For many applications, such as tracing particles, this discrete field must then be extended to the entire region using interpolation. In this paper, we construct approximation schemes with the property that discretely divergence-free data interpolates to an analytically divergence-free vector field. Our solution is remarkably simple, compared to previous approaches, being local, piecewise polynomial, and $C^0$ or $C^1$ continuous, even at cell boundaries.
|
|
Rendering Fractals with Raymarching
CSE 167, Computer Graphics, Albert Chern
2025-03-15
paper /
Extends the path tracer from CSE 167 to support ray marching. Ray marching allows one to render any geometry described by a signed distance function (SDF), by taking steps along rays of size determined by the SDF. By constructing repeating SDFs, we can very efficiently render fractals or other duplicated geometries, like the Menger Sponge shown on the left, or manipulate geometry (such as by extruding or rounding corners) simply by processing the SDF.
|
|
Triton Trails
CSE 110, Software Engineering
2024-12-01
code /
A React/Typescript web app that displays hiking trails in the San Diego area, and lets users create accounts, create new trails, and write reviews. The backend is implemented as an Express.js server with an SQLite database, using Sequelize as an ORM. The maps are displayed with Leaflet and the OSRM API.
|
|
Vortex Particle Simulator
CSE 291, Physics Simulation, Albert Chern
2023-05-15
paper /
code /
A fluid simulator implementing the vortex particle method, written in Rust. Vortex particles are simulated by an RK4 time integrator, and the dye is advected by a 4th order semi-Lagrangian advection. I had a lot of fun messing with mixing in various color spaces.
|
|
Finite Element Elasticity Simulator
CSE 291, Physics Simulation, Albert Chern
2023-05-01
paper /
code /
Simulates an elastic body, using a piecewise-linear finite element discretization on a triangle mesh. The code is written in Rust, and implements backward Euler time integration, using an incremental potential formulation for the update, which is a minimization problem solved with gradient descent.
|
|
Fluid Simulator
2021-04-01
code /
A physics simulator written in Rust, implementing the Smoothed Particle Hydrodynamics algorithm for fluids, and the Material Point Method for simulating elastic objects, as well as snow (as in the Frozen movies!).
|
|
Firework Renderer
2020-01-01
code /
A 3D physically-based path tracing renderer written in Rust; originally based on the “Raytracing in One Weekend” book series, but with several features from the PBR Book impelemented as well. Features multi-threading and BVH acceleration, and supports rendering triangle meshes, HDR environment maps, volumetrics, mathematical primitives like conic sections, procedural textures like Perlin Noise, scenes exported as YAML files, and more!
|
|