-
Notifications
You must be signed in to change notification settings - Fork 213
Implement DG Cartoon partial derivatives #6730
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
Implement DG Cartoon partial derivatives #6730
Conversation
057e27a to
8e11cc6
Compare
nilsdeppe
left a comment
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.
Really good work on this! This is very technical code and I think you did a fantastic job. I have quite a few suggestions, but many are stylistic and you'll just get used to them :)
tests/Unit/NumericalAlgorithms/LinearOperators/Test_PartialDerivatives.cpp
Outdated
Show resolved
Hide resolved
tests/Unit/NumericalAlgorithms/LinearOperators/Test_PartialDerivatives.cpp
Outdated
Show resolved
Hide resolved
tests/Unit/NumericalAlgorithms/Spectral/Test_LogicalCoordinates.cpp
Outdated
Show resolved
Hide resolved
tests/Unit/NumericalAlgorithms/LinearOperators/Test_PartialDerivatives.cpp
Outdated
Show resolved
Hide resolved
tests/Unit/NumericalAlgorithms/LinearOperators/Test_PartialDerivatives.cpp
Outdated
Show resolved
Hide resolved
nilsdeppe
left a comment
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, a few minor typos, please rebase on develop, squash your commits appropriately, and also squash the minor changes immediately (no need to have a separate fixup commit for them)
46510f6 to
c6556d3
Compare
Proposed changes
The first commit is to allow a Mesh to take a
Cartoonbasis which can only ever have one grid point.The second commit uses Michael Pajkos's Cartoon code to find partial derivatives not in the computational domain. As we divide by the coordinates, if there is a zero value, L'Hopital's rule is used to evaluate the derivative at that point.
Within
PartialDeriatives.tpp,cartoon_contraction()does the contractions in Eqn. (218) of the SXS book's Numerical Method's chapter, specifically the thing on the RHS that you take the derivative of or divide by x. Thecartoon_derivative()function does the bottom choice of Eqn. 218 (dividing by x) while the top choice is evaluated if needed at the bottom ofcartoon_partial_derivatives_apply(). One only ever callscartoon_partial_derivatives().Upgrade instructions
Code review checklist
make docto generate the documentation locally intoBUILD_DIR/docs/html.Then open
index.html.code review guide.
bugfixornew featureif appropriate.Further comments