-
Notifications
You must be signed in to change notification settings - Fork 171
Mimetic Spectral Elements #1470
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
Conversation
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.
This is a very big set of tests. How long does it take to run the new tests? A quick look at the Jenkins log indicates that this might be a problematically heavy load.
It is a heavy test load- they take approximately 2 minutes on my laptop with a hot cache. A cold cache (like the testing environment will have) is longer. I wanted to be comprehensive and make sure everything was working properly. I am happy to reduce the # of tests to 1-2 choices of finite element degree per type of problem (helmholtz mse, hemholtz mixed mse, etc.) and/or reduce the number of types of problems. Would it be possible to leave the others just commented out (rather than deleted) so if needed they can be easily restored and run? Or is there a better mechanism in pytest to mark optional testing (that can maybe be enabled by a command-line argument)? |
Please don't comment them out. Please instead mark the extra tests with a |
This seems unlikely to land. |
This pull request adds mimetic spectral elements (described at https://www.sciencedirect.com/science/article/pii/S0021999113006414 and https://arxiv.org/abs/1111.4304), both the primal and dual complexes. This is done by adding the relevant 1D H1 element for the dual complex: Extended Gauss Legendre (EGL); and the L2 edge elements associated with GLL and EGL. These are non-Ciarlet finite elements that use a basis that histopolates (http://people.math.sfu.ca/~nrobidou/public_html/prints/histogram/histogram.pdf) rather than interpolates. The nD deRham complex on hypercubes is then accessible using the variant keyword (either “mse” or “dualmse”) with the relevant elements (DQ, Q, RTCF, etc.).
It requires FEniCS/ufl#5 , FEniCS/fiat#29, FInAT/FInAT#54 and firedrakeproject/tsfc#195.
It also requires correct (integral-preserving) L2 pullbacks, which are implemented at #1463.