CASL-HJX is a C++ library for solving Hamilton-Jacobi equations and related partial differential equations using high-order numerical methods.
- Hamilton-Jacobi-Bellman equations for optimal control problems
- Linear quadratic regulator (LQR) with SIMD optimization
- Level-set methods for interface tracking
- High-order WENO and ENO spatial discretization
- TVD Runge-Kutta time integration
- IMEX methods for stiff problems
- MPI and OpenMP parallelization
The library supports various PDE types including advection, diffusion, Burgers equation, and advection-diffusion systems.
git clone https://github.com/UCSB-CASL/CASL-HJX.git
cd CASL-HJX
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j
Requirements: C++17 compiler, CMake 3.15+, OpenMP 4.0+
# Run LQR example
cd CASLProjects/projectLQR2D
./projectLQR2D 80 160
# Run other examples
cd ../projectAdvection && ./projectAdvection
cd ../projectBurgers && ./projectBurgers
- User Manual Paper: https://arxiv.org/abs/2505.11527
- Examples:
examples/
directory
Faranak Rajabi, Jacob Fingerman, Andrew Wang, Jeff Moehlis, Frederic Gibou
Computational Applied Systems Laboratory (CASL)
Department of Mechanical Engineering
University of California, Santa Barbara
https://sites.engineering.ucsb.edu/~fgibou/index.html
@article{rajabi2025caslhjx,
title={CASL-HJX: A Comprehensive Guide to Solving Deterministic and
Stochastic Hamilton-Jacobi Equations},
author={Rajabi, Faranak and Fingerman, Jacob and Wang, Andrew and
Moehlis, Jeff and Gibou, Frederic},
journal={Computer Physics Communications},
year={2025},
note={Submitted}
}
Academic research license. See LICENSE file for details.