Add free-slip friction PINSFV test #18953
Merged
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.
This test almost perfectly mimics the problematic input that @joe61vette sent us. It has friction, a symmetry boundary, and a free slip wall boundary. The velocity field should be constant throughout the entire domain, and that is what we see when we have two term boundary expansion turned on which allows the pressure gradient to be constant and to perfectly balance the friction term in the momentum balance. When we have a one term boundary expansion on there is an implicit assumption that the gradient is zero at the boundary, e.g. the boundary face value is equal to the adjoining cell centroid value. In the case of the momentum balance this has the effect of decreasing the pressure gradient in the cell nearest the boundary. Consequently the cell center velocity must decrease so that the friction and grad pressure terms can balance. This is what @joe61vette was observing. However, once we turn on the two term expansion, the grad pressure term accuracy is restored and the cell center velocities are correct.
In the future I think we will restore
two_term_boundary_expansion
as the default (like it used to be until we changed it in #17716) and do sometry-catch
work in gradient computation near boundaries to protect against singular systems which arise for triangles commonly (see #16822).Added test refs #16765
velocity field: