Order of quadrature for HEX20 elements

16 views
Skip to first unread message

Samyog

unread,
May 25, 2020, 4:09:35 PM5/25/20
to mastodon-users
Hello all,

I could not find any documentation on "order of quadrature" used within the Executioner block in MASTODON. I wanted to know what "order = AUTO" (which seems to be the default setting) is actually doing while using HEX20 elements or in general.

Thank you
Samyog

Christopher Wong

unread,
May 25, 2020, 4:40:48 PM5/25/20
to mastodon-users
Yes, there is little documentation on this feature. I know of one thread on the MOOSE-users group that sort of began discussing it: https://groups.google.com/forum/?hl=en#!searchin/moose-users/christopher$20wong%7Csort:date/moose-users/_-8Fr8vawxc/b_8T1UVaAAAJ

I haven't looked into the source code, which is where one may begin to figure out what the `order = AUTO` input param might do, but I imagine it invokes an automatic selection of a Guass quadrature rule based on the rank of the resulting system of equations. We want to use the minimum number of integration points required without causing rank deficiency, and we also want to satisfy the order of the shape function derivatives. For the HEX20 serendipity element, we need to use the 3 x 3 x 3 Gauss quad rule in order to achieve a well conditioned system of equations. This number of QPs in all three directions will also satisfy the order of the polynomials interpolations up to the fifth order (even though your probably just using linear). You can read about all of this in the literature on finite elements.

Anyways, when you use `order = AUTO`, I'm guessing it takes all of these things into consideration, i.e., it checks the order of your variables and detects the rank of the system, and then selects the lowest gauss rule that satisfies those constraints. You can probably reverse engineer the Gauss rule that it selects by adding a `std::cout` statement somewhere in the code to query the number of gauss points, or maybe theres a PP to do just that. I'm willing to bet that you'll see a 3 x 3 x 3 QP grid in your HEX20 element. 
Reply all
Reply to author
Forward
0 new messages