Skip to content

Commit

Permalink
Merge pull request #16177 from marcfehling/test-lobatto
Browse files Browse the repository at this point in the history
Added test for hp-constraints on Q elements with Gauss-Lobatto support points.
  • Loading branch information
kronbichler committed Oct 24, 2023
2 parents 7553e86 + 7ecaddc commit add4978
Show file tree
Hide file tree
Showing 2 changed files with 79,402 additions and 0 deletions.
69 changes: 69 additions & 0 deletions tests/hp/hp_constraints_q_lobatto.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
// ---------------------------------------------------------------------
//
// Copyright (C) 2006 - 2023 by the deal.II authors
//
// This file is part of the deal.II library.
//
// The deal.II library is free software; you can use it, redistribute
// it, and/or modify it under the terms of the GNU Lesser General
// Public License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
// The full text of the license can be found in the file LICENSE.md at
// the top level directory of deal.II.
//
// ---------------------------------------------------------------------



// check that computation of hp-constraints works for Q elements correctly
// on Gauss-Lobatto support points

char logname[] = "output";


#include "hp_constraints_common.h"


template <int dim>
void
test()
{
deallog << "Test for dim = " << dim << std::endl << std::endl;
hp::FECollection<dim> fe;
std::vector<unsigned int> degrees;
for (unsigned int i = 1; i < 4; ++i)
{
fe.push_back(FE_Q<dim>(QGaussLobatto<1>(i + 1)));
degrees.push_back(i);
}

deallog << "No hanging nodes test" << std::endl;
test_no_hanging_nodes(fe);
deallog << std::endl << std::endl;

deallog << "Hanging nodes test" << std::endl;
test_with_hanging_nodes(fe);
deallog << std::endl << std::endl;

deallog << "Wrong face orientation test" << std::endl;
test_with_wrong_face_orientation(fe);
deallog << std::endl << std::endl;

deallog << "2d deformed mesh test" << std::endl;
test_with_2d_deformed_mesh(fe);
deallog << std::endl << std::endl;

deallog << "2d deformed refined mesh test" << std::endl;
test_with_2d_deformed_refined_mesh(fe);
deallog << std::endl << std::endl;

deallog << "Interpolation test" << std::endl;
test_interpolation(fe, degrees);
deallog << std::endl << std::endl;

deallog << "Random hanging nodes" << std::endl;
test_with_hanging_nodes_random(fe);

deallog << std::endl << std::endl;
deallog << std::endl << std::endl;
}

0 comments on commit add4978

Please sign in to comment.