Skip to content

Commit 8c2a6ec

Browse files
authored
Merge pull request #3448 from roystgnr/fdm_hex_sh
Use FDM for higher-order SIDE_HIERARCHIC Hexes for now
2 parents 9c9f2ed + 9d66fb9 commit 8c2a6ec

3 files changed

Lines changed: 12 additions & 4 deletions

File tree

src/fe/fe_hierarchic_shape_3D.C

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1230,6 +1230,10 @@ Real FE<3,SIDE_HIERARCHIC>::shape_deriv(const Elem * elem,
12301230
{
12311231
case HEX27:
12321232
{
1233+
// I need to debug the p>2 case here...
1234+
if (totalorder > 2)
1235+
return fe_fdm_deriv(elem, order, i, j, p, add_p_level, FE<3,SIDE_HIERARCHIC>::shape);
1236+
12331237
const unsigned int dofs_per_side = (totalorder+1u)*(totalorder+1u);
12341238
libmesh_assert_less(i, 6*dofs_per_side);
12351239

@@ -1486,6 +1490,11 @@ Real FE<3,SIDE_HIERARCHIC>::shape_second_deriv(const Elem * elem,
14861490
{
14871491
case HEX27:
14881492
{
1493+
// I need to debug the p>2 case here...
1494+
if (totalorder > 2)
1495+
return fe_fdm_second_deriv(elem, order, i, j, p, add_p_level,
1496+
FE<3,SIDE_HIERARCHIC>::shape_deriv);
1497+
14891498
const unsigned int dofs_per_side = (totalorder+1u)*(totalorder+1u);
14901499
libmesh_assert_less(i, 6*dofs_per_side);
14911500

src/fe/fe_interface.C

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2676,8 +2676,7 @@ unsigned int FEInterface::max_order(const FEType & fe_t,
26762676
case HEX20:
26772677
return 0;
26782678
case HEX27:
2679-
return 2; // p=3+ is still buggy in 3D
2680-
// return unlimited;
2679+
return unlimited;
26812680
case PRISM6:
26822681
case PRISM15:
26832682
case PRISM18:

tests/fe/fe_side_test.C

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -582,8 +582,8 @@ INSTANTIATE_FESIDETEST(FOURTH, SIDE_HIERARCHIC, TRI7);
582582
INSTANTIATE_FESIDETEST(CONSTANT, SIDE_HIERARCHIC, HEX27);
583583
INSTANTIATE_FESIDETEST(FIRST, SIDE_HIERARCHIC, HEX27);
584584
INSTANTIATE_FESIDETEST(SECOND, SIDE_HIERARCHIC, HEX27);
585-
//INSTANTIATE_FESIDETEST(THIRD, SIDE_HIERARCHIC, HEX27);
586-
//INSTANTIATE_FESIDETEST(FOURTH, SIDE_HIERARCHIC, HEX27);
585+
INSTANTIATE_FESIDETEST(THIRD, SIDE_HIERARCHIC, HEX27);
586+
INSTANTIATE_FESIDETEST(FOURTH, SIDE_HIERARCHIC, HEX27);
587587
//
588588
INSTANTIATE_FESIDETEST(CONSTANT, SIDE_HIERARCHIC, TET14);
589589
INSTANTIATE_FESIDETEST(FIRST, SIDE_HIERARCHIC, TET14);

0 commit comments

Comments
 (0)