Skip to content

GustavoExel/ROM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

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

eq1

If we use the separation of variables technique

eq2

And our basis eq3 is orthonormal, meaning that

eq4

Then we can substitute the separation of variables into the dynamical system equation

eq5

And take the internal product with eq6 in both sides

eq7

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 eq8 being the matrix whose columns are the basis functions, then the problem can also be expressed as

eq9

Where eq10 is a eq11 dimensional vector, being d the dimension of eq12 and eq13.

If there is as many basis functions as there is discretization points, then the basis functions span eq14 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 eq15 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.

About

In this repository I try and solve physical problems using reduced order modelling to reduce the computational cost.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors