Adding immersed boundary conditions to boundaries.py #250
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I updated boundaries.py to allow for a fourth boundary type (immersed). This takes in a mask that is applied to the simulation grid, enforcing a constant value on the mask (default 0.0 for "no-slip").
I added a couple of helper functions in boundaries.py for simulating channel flow with a simple shape in the middle (circle or square) -- I'm still figuring out what a good API for defining the mask shapes would be.
I also added another notebook demo for demonstrating this, it was mostly copied from the original channel flow demo notebook.
It passed all the tests in boundaries_test.py
I also made a small update to visualization.py to allow for rotations in the output gif
Please let me know what you think or if you have any thoughts, and especially if there's anything glaring or obvious. Or if there's some cleanliness or visualization issues you think I should take care of.
I've also submitted my Contributor License Agreement to Google as an individual contributor
Cheers
Marko