DiFVM: A Vectorized Graph-Based Finite Volume Solver for Differentiable CFD on Unstructured Meshes

Pan Du1, Yongqi Li1,2, Mingqi Xu2

  • 1Department of Aerospace and Mechanical Engineering, University of Notre Dame, Notre Dame, IN.

Journal of Computational Physics
|October 15, 2026
PubMed

Related Concept Videos

Vector Calculus: Problem Solving01:20

Vector Calculus: Problem Solving

Vector calculus provides mathematical tools for analyzing physical fields that vary throughout space. One important application is the study of gravitational interactions between celestial bodies. Consider the Earth positioned at the origin and a satellite located at a point in three-dimensional space. The Earth exerts a gravitational force on the satellite, and this force can be described by components acting along the coordinate directions. Together, these components form a vector field that...
Derivatives of Vector Functions01:17

Derivatives of Vector Functions

A vector-valued function describes position as a function of time. For example, in Cartesian coordinates, the position of a car moving along a curved road can be written as\begin{equation*}\textbf{r}(t)=\langle x(t),y(t),z(t)\rangle\end{equation*}Secant Vector and Average Velocity:This secant vector captures the overall change in position during the interval and provides a crude estimate of the direction of motion.At time t, the car is at point P, with position r(t). After a short interval h,...
Uniform Depth Channel Flow: Problem Solving01:18

Uniform Depth Channel Flow: Problem Solving

To calculate the flow rate for a trapezoidal channel, first, identify the bottom width, side slope, and flow depth of the channel. The cross-sectional area (A) corresponding to the depth of flow (y), channel bottom width (B), and side slope (θ) is determined by:Next, calculate the wetted perimeter, which includes the bottom width and the sloped side lengths in contact with the water. Using the values of the cross-sectional area and the wetted perimeter, determine the hydraulic radius by...
Partial Differential Equations01:21

Partial Differential Equations

A stone dropped into a still pond generates waves that propagate outward in circular patterns, creating a dynamic surface whose elevation depends on both position and time. At any given location, the water level oscillates as the wave passes, while at any fixed moment, the surface exhibits smooth, curved structures extending across space. This dual dependence requires a mathematical description that accounts for variation in multiple variables simultaneously.At a fixed point on the water...
Multivariable Functions and Higher Derivatives01:30

Multivariable Functions and Higher Derivatives

A multivariable function assigns a single output value to each ordered set of independent inputs, thereby defining a surface in three-dimensional space. For a function f(x, y), each point (x, y) corresponds to a height z = f(x, y). This geometric interpretation allows systematic analysis of how the output varies as multiple variables change simultaneously. Such functions frequently arise in physical models and optimization problems, where system behavior depends on several interacting...
Divergence Theorem in 3D Space01:20

Divergence Theorem in 3D Space

In vector calculus, flux measures the total flow of a vector field through a surface. For a closed surface in three-dimensional space, this means measuring how much of the field passes outward through every point on the boundary. Directly calculating this flux can be difficult when the surface has a complicated or irregular shape. The Divergence Theorem provides a powerful alternative by relating surface flux to behavior inside the enclosed region.The Divergence Theorem states that the outward...