-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LBM #71
LBM #71
Conversation
…e-stepper changes
Codecov Report
@@ Coverage Diff @@
## master #71 +/- ##
=======================================
Coverage 70.22% 70.22%
=======================================
Files 12 12
Lines 131 131
=======================================
Hits 92 92
Misses 39 39 Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
Can you elaborate a bit on the difference to bns.
Both solvers govern the same physics and expecting to achieve similar results for low Mach flows. I think there are couple points of using DG- LBM, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks really good to me. A couple questions/comments:
- I think it's a good idea to make the default final time t=10 in the setup.rcs so that the runs produce several frames.
- Same comment for the testing runs. Otherwise only a small number of timesteps are actually performed. (Changing this will require updated 'golden' norms).
- I suspect there is a subtle bug in the Quad2D code path. Running the default setup to t=10 doesn't pass the 'eyeball' norm. The Gaussian doesn't seem to move at all.
I see a several places where early PML and/or Multirate support is enabled/commented. @AliKarakus is the plan to add these features in the future? They're not hurting anything so no worries either way.
I also did some quick profiling on large problem setups. Probably unsurprisingly, several kernels are register heavy, the volume and phaseField kernels in particular are often at <30% peak DRAM BW. Not a problem, just an FYI.
I second @tcew 's comment. I'm not particularly familiar with LBM, so it would be cool to see the full formulation written somewhere!
Thanks @AliKarakus !
@AliKarakus @tcew These test runs are going to be bitten by the latest OCCA changes complaining about Should we make occa a git submodule to avoid this kind of thing in the future? |
Yes. I think this is a very good and timely idea. I anticipate quite a few changes in occa and we do not want to be continually held up. |
@noelchalmers Thanks for the feedback, I double checked all the tests on my local machine. Everything works smoothly. --> I see a several places where early PML and/or Multirate support is enabled/commented. @AliKarakus is the plan to add these features in the future? They're not hurting anything so no worries either way. I am going to work on a PML formulation, but multi-rate time-stepping creates some issues because of the time-step size dependent properties in LBM. Need to check details a little more. Currently my target is to combine this basic DG-LBM formulation with Level-Set for bubble dynamics and contact line problems. --->I also did some quick profiling on large problem setups. Probably unsurprisingly, several kernels are register heavy, the volume and phaseField kernels in particular are often at <30% peak DRAM BW. Not a problem, just an FYI. Yes, I think this problem is arising from the high number of fields i.e. 9 for 2D and 15 or 19 for 3D. At the moment, I don't know how to overcome this performance issue quickly as BNS outperforms LBM even in 2D test cases. --->I'm not particularly familiar with LBM, so it would be cool to see the full formulation written somewhere! Thanks a lot @noelchalmers and @tcew . |
@AliKarakus Can you merge the latest master branch? That should fix our OCCA issues and re-run the CI checks. |
@AliKarakus @noelchalmers - the Lbs tests seem to take quite a while. In particular the tet 3d case seems to take 20 minutes unless I misread the test report. |
LGTM. The whole suite of tests take around 24 minutes. |
@noelchalmers would you like to do the honors and merge this at your convenience ? |
Great work @AliKarakus and thanks to @noelchalmers for overseeing the merge ! |
Thanks @tcew and @noelchalmers. I am deleting the lbm branch now. |
DG / Lattice-Boltzmann solver with basic functionality.