New tutorial: Partitioned Burgers eq. 1D #670
Conversation
… in visualize_partitioned_domain.py. Wrap boundary conditions in new class BoundaryWrapper because they are dependent on the solver iterations. Implement implicit Euler (and Jacobian and residual for the root finding iteration. Initialize participants. Zero gradient condition on the outside boundaries.
…-surrogate.sh, generate-training-data.sh. Fix floating point issue in t_index. Add --savefile argument to solver-scipy-fvolumes.py to save data for training.
…n scripts. Fix requirements.txt for scipy and surrogate solvers. Add example images for README
…ipt to check for initial conditions after installing environment.
uekerman
left a comment
There was a problem hiding this comment.
Thanks for the very nice addition already! I only had brief look in this first iteration and did not yet try to run things. Please see comments below.
Let's indeed remove the Nutils solver. Could always be added later again.
…arate from images directory.
… versions in requirements. Remove commented out code from solvers.
uekerman
left a comment
There was a problem hiding this comment.
I was able to run the cases and got meaningful results. We are probably close to merging this. Mainly cosmetics now.
I think a few scripts of utils could go into solver-scipy. Only keep those in utils that are used by neumann-surrogate as well.
|
@vidulejs it would be great to be able to include this in the upcoming distribution release. With a quick look, I think that most/all of the open points here are rather easy to resolve. Let me know if I can help; I could also resolve some of these (but not all) directly. |
|
@vidulejs I applied as much of the feedback as I could. Only a few comments are still missing:
It would be great if you could quickly add these comments, so that we can finally get this one merged and published. |
|
Hey Makis! Thanks so much for the help and for budging me! Please see my commits, I hope I've addressed the last problems. Regarding the surrogate model training -- I added another paragraph to the existing README to explain what the Actually, I can do one better and provide the full training scripts or the Jupyter notebook to reproduce the models. Problem is that those scripts are not up to the quality of the preCICE tutorials repo. I had created a public repo called neural-adapter where I did all of my master's thesis development work. It contains a bunch of slightly disorganized Jupyter notebooks and a few development artifacts. Anyway, today I pulled the repo on my new system and was able to reproduce the model training. I updated the README of that repo to include the model training workflow. Now the question is whether to point to that repo for the model training or not. Please take a look and let me know if this is acceptable. Otherwise I could try to re-create a standalone training script just for this tutorial. |
New tutorial case: Partitioned Burgers' Equation in 1D solved with SciPy Finite Volume implementation and a Neural Network surrogate model !
Checklist:
changelog-entries/<PRnumber>.md.