logo

CINDy for Partial Differential Equations: PDE-FIND 📂Statistical Analysis

CINDy for Partial Differential Equations: PDE-FIND

Algorithm 1

Consider the SINDy algorithm (../2581): let a state space be $\mathbb{R}^{n}$ and a dynamical system be given by a smooth function $f : \mathbb{R}^{n} \to \mathbb{R}^{n}$. $$ \dot{\mathbf{x}} = f \left( \mathbf{x} \right) $$ Form a matrix $\Theta \left( X \right) \in \mathbb{R}^{m \times p}$ whose columns are derived variables obtained by applying various nonlinear functions to the independent variables of $X$, and perform STLSQ (../2579) on the following matrix equation to find the governing equation. The resulting algorithm is called SINDy. $$ \dot{X} = \Theta \left( X \right) \Xi $$

As a variant of SINDy, the algorithm for recovering partial differential equations is called PDE-FIND.

Description

The FIND in PDE-FIND stands for Functional Identification of Nonlinear Dynamical Systems, which is essentially an initialism made from the first letters of the phrase—something commonly seen in STEM. Originally, SINDy itself was such an acrostic.

alt text

The core idea of the algorithm is to apply SINDy but add spatial partial-derivative terms on the right-hand side. If nonlinear terms like $u u_{x}$ are included, one can also capture the material derivative (../2781) and thereby recover complex fluid-dynamics models such as the Navier–Stokes equations (../2795).

alt text

If the domain is too large, one may use only a subset of points instead of every coordinate. Fundamentally, if there is a single governing equation, every point follows the same equation, so this poses no problem.

$$ u_{t} = N \left( u, u_{x}, u_{xx}, \cdots , x, t, \mu \right) $$ From the perspective of someone familiar with data-driven models, the paper introducing PDE-FIND is useful because, while one can understand setting up a least-squares problem (../356) in the form above, the authors explicitly provide the concrete form of the matrices. In the supplementary material, they show the construction of the expressions as follows.

alt text

Fundamentally, PDE-FIND is no different from SINDy. The only practical difference is that one must use a PDE solver rather than an ODE solver.


  1. Samuel H. Rudy et al. ,Data-driven discovery of partial differential equations.Sci. Adv.3,e1602614(2017).DOI: https://doi.org/10.1126/sciadv.1602614 ↩︎