Pressio/pressio4py

Burgers' lspg mlp

gokhalen opened this issue · 4 comments

If I modify the Burgers' class so that it exposes the same interface as advection_diffusion1d.py will unsteady_default_lspg_advdiff1d_mlp work out of the box?

The class Burgers1d does not use the same variables as AdvDiff1d, hence the demo crashes.

Is there something else I need to modify/consider?

Thanks,

Nachiket

if you expose the same interface, then you need to change whatever else was specific to the adv problem.
@jtencer can you please help with this since you are the one who did this? thanks

I think I'm getting reasonable results on a Burgers' problem. I've modified the advection diffusion example. However, I have one question: Where does the ROM get information of the boundary conditions? Is it through the u0 attribute of the AdvDiff1d class? The full order model is passed to the runLSPG routine on line 87 here. This information will be useful because I'm trying to reproduce the results of Lee & Carlberg

Edit: I do believe I was able to get how to implement boundary conditions on the ROM. Remark 3.1, section 5.3 and section 6.1 of Lee and Carlberg's paper make it clear. I needed to modify a couple of lines in runLSPG. I will reach out if I need more help.

the ROM reconstrcuts a FOM state, and the solver enforces BCs on that. the basis already have knowledge of the BCs. does that answer?

I centered the snapshot data and set the fomReferenceState and romState according to the paper and the solutions seem to respect the boundary conditions.