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 is basically the same as PR#102 , but rebased and adapted for the current state of BEAST, and the compatibilty for WiltonInts84 is now set to the newest version.
For Helmholtz problems, there was so missing support for the singular or near singular integrals when linear basis functions are used.
In this pull request,
functions were adapted or added to allow using SauterSchwab quadratures for the common face/edge/vertex case for all four Helmholtz3D operators for the different combinations of patch/pyramid basis functions available,
for the near singular case, a Wilton/ singularity extraction was implemented, also for the different combinations of patch/pyramid functions.
I tested the functions by comparing the SauterSchwab, Wilton, and DoubleQuad integrals for the common face/edge/vertex cases and making sure they give similar results, also under the assumption that the Wilton strategy should give results closer to the SauterSchwab strategy than the DoubleQuad does. However, there are some cases where where the DoubleQuad performs better, and I am not sure why that is, it's marked in the code as a comment.
For seperated triangles, I also compare to a reference value that was calculated with the HCubature package.