HeadlinesBriefing HeadlinesBriefing.com

PINN for Navier-Stokes Inverse Blood Flow

Towards Data Science •
×

Wall shear stress is the friction blood puts on the wall of a vessel. It is tied to where plaque builds up, and it is hard to measure directly. What a clinic can get, with Doppler ultrasound for example, is the velocity at a few points inside the vessel. So the question for this article is whether a neural network can take those scattered, noisy velocities, together with the equations of fluid flow, and give back the whole flow field and the shear stress at the wall. A physics-informed neural network (PINN) is a natural fit. I built one in plain Py Torch, without Deep XDE or any other PINN library, for a 2D artery with a narrowing (a stenosis). From 40 velocity readings it reconstructs the velocity and pressure fields and the region of reversed flow behind the narrowing. It also works out the viscosity of the fluid, which I treated as unknown, and its wall shear stress follows the CFD reference closely.

The artery is a 2D channel of height H with a smooth bump on the lower wall that blocks half of the opening, a 50% stenosis. The flow is incompressible Navier-Stokes at a Reynolds number of 200, with lengths measured in channel heights and velocities in inlet velocities. That is a slow flow, at the low end of what happens in a carotid artery. In these units the kinematic viscosity is 0.005. To score a reconstruction you need to know the right answer, so I generated it. A Navier-Stokes solver I wrote computes the steady flow, and the PINN only ever gets 40 noisy readings taken from that solution. The noise is Gaussian, at 7% of the inlet velocity.

The network is a plain MLP with 6 layers of 32 tanh units, about 5,500 weights. It uses tanh because the momentum equation needs second derivatives of the output. The inputs are rescaled to the range -1 to 1 inside the network, so autograd still differentiates with respect to the physical coordinates. A PINN maps coordinates to physical quantities here (x, y) -> (u, v, p): two velocity components and the pressure. The loss has a term that fits the measurements, like an inverse problem, plus a term that drives the Navier-Stokes residual toward zero everywhere. This is the first article in a series about PINNs for blood flow.

Source: Towards Data Science · Summarized by HeadlinesBriefing