Revisiting Conservativeness in Fluid Dynamics: Failure of Non-Conservative PINNs and a Path-Integral Remedy
Arun Govind Neelan, Ferdin Sagai Don Bosco, Naveen Sagar Jarugumalli, Suresh Balaji Vedarethinam

TL;DR
This paper examines the failure of non-conservative PINNs in fluid dynamics and introduces a path-integral approach based on DLM theory to improve shock speed accuracy in primitive-variable formulations.
Contribution
It demonstrates the failure mechanisms of non-conservative PINNs and proposes a path-integral framework to restore physical fidelity in transient fluid simulations.
Findings
Non-conservative PINNs fail in unsteady shock problems due to source term violations.
Path-integral PINNs recover correct shock speeds using path-consistent losses.
The approach bridges classical and machine learning methods for fluid dynamics simulations.
Abstract
The choice between conservative and non-conservative formulations is a fundamental dilemma in CFD. While non-conservative forms offer intuitive modeling in primitive variables, they typically produce erroneous shock speeds. This paper critically analyzes these formulations, contrasting classical failures against the capabilities of Physics-Informed Neural Networks (PINNs). Using the Adaptive Weight and Viscosity (PINNs-AWV) architecture, we evaluate cases ranging from shallow water equations to unsteady 1D and 2D Euler equations. Results reveal a significant dichotomy: while PINNs-AWV restores physical fidelity in scalar and steady systems, standard non-conservative PINNs fail in unsteady systems like the Sod shock tube. We demonstrate this failure stems from non-vanishing source terms introduced by viscous regularization, which violate the Rankine--Hugoniot jump conditions. To…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
