Closed mbkuhn closed 3 weeks ago
Running the rankine test with this branch give the following output (relevant parts only)
// Fill mac velocities using velocity BCs
sibling fields FPSL dir i = 0 (umac)
Rankine.H op: filling 10.73181747 at i=-1
Rankine.H op: filling 10.13957005 at i=41
sibling fields FPSL dir i = 1 (vmac)
Rankine.H op: filling 1.016180833 at i=-1
Rankine.H op: filling 0.5357916479 at i=40
sibling fields FPSL dir i = 2 (wmac)
Rankine.H op: filling 0 at i=-1
Rankine.H op: filling 0 at i=40
Nice work! I left a bunch of comments/thoughts/things to try out. LMK if you want help with these.
I think this mostly takes care of the first bit: getting the right indices to be used in the UDF op
. The comments I had in the original issue were more focused on defining a different op
for the faces. I am not sure we want to go down that road but it's the "right thing to do" eventually. Though again, getting those precise details right is probably only important for BDS and the mac vel in the ghost cells.
This is done in #1093
Summary
Using template arguments to modify the boundary index checks for face quantities. Ended up needing a decent amount of new function / type declarations, though, and I'm not sure how best to use the loop within fillpatch_sibling_fields now that each physbc has a different type.
Pull request type
Checklist
The following is included:
This PR was tested by running:
Additional background
This may not be the best way to do it... it may make things harder when we try to improve the UDFs. Obviously, this is starting off sloppy and will need a thorough pass through and probably unit tests added as well.
Issue Number: #1076