pymordemos.symplectic_wave_equation

Module Contents

pymordemos.symplectic_wave_equation.discretize_fom(T=50)[source]
pymordemos.symplectic_wave_equation.main(final_time: float = Argument(10.0, help='Final time of the simulation'), rbsize: int = Argument(80, help='Maximal reduced basis size'))[source]

Symplectic MOR experiment for linear wave equation discretized with FD.

The experiment closely follows the experiment described in [PM16]. The reduced models are trained on the trajectory of one parameter and try to reproduce this solution in the reduced simulation (reproduction experiment).

It compares structure-preserving MOR for Hamiltonian systems (known as symplectic MOR) with classical (non-structure-preserving) MOR. Different symplectic basis generation techniques are compared (‘cotangent_lift’, ‘complex_svd’, ‘svd_like’) to a non-symplectic basis (‘pod’). The experiment shows: Although ‘pod’ has the best projection error, its reduction error is comparably high. In contrast to this, the reduction error of all symplectic bases is close to their respective projection error.

Note that compared to the experiments in [PM16], the POD gives better results here.

pymordemos.symplectic_wave_equation.run_mor(fom, U_fom, method, red_dims)[source]
pymordemos.symplectic_wave_equation.METHODS[source]
pymordemos.symplectic_wave_equation.SYMPLECTIC_METHODS = ['cotangent_lift', 'complex_svd', 'svd_like'][source]