Reduced Order Modelling is a technique used to make the solution of large physical simulations cheaper, by using data from previous simulations and even from experiments in order to express a dynamical system in very efficient coordinates.
In traditional methods, like Finite Volumes, Finite Differences and Finite Elements, we increase the dimensionality of the problem in order to turn the low dimensional PDE into a high dimensional ODE, where each direction in our new coordinate system represents a degree of freedom in a specific node of our spatial discretization.
Since we don't use all the degrees of freedom, meaning that not every state of the state vector could be a valid state (like a random one), we could more efficiently express our problem in other coordinates, which could be Fourier coordinates, Wavelet coordinates, or even tailored coordinates, which use data from other experiments to build a coordinate basis using the Singular Value Decomposition (SVD).
Suppose our problem can be represented in the form of a non-linear dynamical system
If we use the separation of variables technique
And our basis is orthonormal, meaning that
Then we can substitute the separation of variables into the dynamical system equation
And take the internal product with in both sides
If we discretize the whole problem in space, expressing each basis function as a n-tall vector, where n is the number of discretization points, and being the matrix whose columns are the basis functions, then the problem can also be expressed as
Where is a
dimensional vector, being d the dimension of
and
.
If there is as many basis functions as there is discretization points, then the basis functions span and there is no advantage in implementing the reduced order modeling. However, if we choose the basis functions such that the first few basis functions can efficiently represent the behaviour of our problem, then we can use way less basis functions than discretization points, and therefore our solution becomes much less costly than a traditional one.
A good way of choosing is using the Singular Value Decompostion, an operation that extracts the modes with the bigger variance from an already solved problem, or even from an actual experiment.
In this repository, I'll start solving very easy problems like the Heat Equation problem which is nice and linear, and the goal is to solve more complex and non-linear problems.
All the procedures were inspired by the YouTube channels of the professors Steve Brunton and Nathan Kutz, as well as their book Data Driven Science and Engineering.