From: Daniel Arndt Date: Thu, 16 Nov 2017 16:36:51 +0000 (+0100) Subject: Instantiate compute_interpolation_to/from_quadrature_points_matrix also for dim!... X-Git-Tag: v9.0.0-rc1~762^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f906d68d8714361e3572677fe940c4889858a64b;p=dealii.git Instantiate compute_interpolation_to/from_quadrature_points_matrix also for dim!=spacedim --- diff --git a/source/fe/fe_tools.inst.in b/source/fe/fe_tools.inst.in index d122f11ae0..30b1a8b698 100644 --- a/source/fe/fe_tools.inst.in +++ b/source/fe/fe_tools.inst.in @@ -133,6 +133,20 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS template FiniteElement * get_fe_by_name (const std::string &); + template + void + compute_interpolation_to_quadrature_points_matrix + (const FiniteElement &, + const Quadrature &, + FullMatrix &); + + template + void + compute_projection_from_quadrature_points_matrix + (const FiniteElement &, + const Quadrature &, + const Quadrature &, + FullMatrix &); #endif #if deal_II_dimension == deal_II_space_dimension @@ -188,13 +202,6 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS (const FiniteElement &, FullMatrix ( &)[GeometryInfo::max_children_per_face], unsigned int, unsigned int, const double); - template - void - compute_projection_from_quadrature_points_matrix (const FiniteElement &, - const Quadrature &, - const Quadrature &, - FullMatrix &); - template void compute_projection_from_quadrature_points( @@ -209,13 +216,6 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS const std::vector > &, std::vector > &); - - template - void - compute_interpolation_to_quadrature_points_matrix (const FiniteElement &, - const Quadrature &, - FullMatrix &); - #if deal_II_dimension != 1 template void diff --git a/tests/bits/fe_tools_cpfqpm_05.cc b/tests/bits/fe_tools_cpfqpm_05.cc new file mode 100644 index 0000000000..8f5018c5e2 --- /dev/null +++ b/tests/bits/fe_tools_cpfqpm_05.cc @@ -0,0 +1,240 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2005 - 2017 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 at +// the top level of the deal.II distribution. +// +// --------------------------------------------------------------------- + + +#include "../tests.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +// check +// FETools::compute_projection_from_quadrature_points_matrix +// we put this into the fe_tools_common framework for simplicity, but +// in fact we ignore the second FE it passes to the check_this() function +// and we can only test as well for scalar elements, since this is all +// the function presently supports. +// +// this test makes sure that projecting onto a finite element space +// sufficiently fine to hold the quadrature point data, then interpolating +// back to the quadrature points is an identity operation +// +// This is the same as fe_tools_cpfqpm_02 but testing dim &m) +{ + if ((m.m() == 0) || (m.n() == 0)) + { + deallog << "(Empty matrix)" << std::endl; + return; + } + + deallog << m.l1_norm() << ' ' << m.linfty_norm() + << std::endl; + if (m.m() == m.n()) + deallog << m.frobenius_norm() << std::endl; + + for (unsigned int i=0; i +void +check_this (const FiniteElement &fe, + const FiniteElement &/*fe2*/) +{ + // only check if both elements have + // support points. otherwise, + // interpolation doesn't really + // work + if (fe.n_components() != 1) + return; + + // ignore this check if this fe has already + // been treated + static std::set already_checked; + if (already_checked.find(fe.get_name()) != already_checked.end()) + return; + already_checked.insert (fe.get_name()); + + + // test with the same quadrature formulas + // of a degree that is high enough to + // exactly capture the data + QGauss q_lhs(fe.degree+1); + QGauss q_rhs(fe.degree+1); + + // this test can only succeed if there are + // at least as many degrees of freedom in + // the finite element as there are + // quadrature points + if (fe.dofs_per_cell < q_rhs.size()) + return; + + deallog << "dofs_per_cell=" << fe.dofs_per_cell + << ", n_q_points=" << q_rhs.size() + << std::endl; + + FullMatrix X (fe.dofs_per_cell, + q_rhs.size()); + + FETools::compute_projection_from_quadrature_points_matrix (fe, + q_lhs, q_rhs, + X); + + // then compute the matrix that + // interpolates back to the quadrature + // points + FullMatrix I_q (q_rhs.size(), fe.dofs_per_cell); + FETools::compute_interpolation_to_quadrature_points_matrix (fe, q_rhs, + I_q); + + FullMatrix product (q_rhs.size(), + q_rhs.size()); + I_q.mmult (product, X); + + // the product should be the identity + // matrix now. make sure that this is + // indeed the case + for (unsigned int i=0; i +void +check (const FiniteElement &fe1, + const FiniteElement &fe2, + const std::string &name) +{ + deallog << "Checking " << name + << " in " << dim << "d and spacedim " << spacedim + << std::endl; + + // call main function in .cc files + check_this (fe1, fe2); +} + + + + + +#define CHECK(EL1,deg1,EL2,deg2,dim,spacedim)\ + { FE_ ## EL1 fe1(deg1); \ + FE_ ## EL2 fe2(deg2); \ + check(fe1, fe2, #EL1 #deg1 " against " #EL2 #deg2); \ + check(fe2, fe1, #EL2 #deg2 " against " #EL1 #deg1); \ + } + +#define CHECK_ALL(EL1,deg1,EL2,deg2)\ + { CHECK(EL1,deg1,EL2,deg2,1,2); \ + CHECK(EL1,deg1,EL2,deg2,1,3); \ + CHECK(EL1,deg1,EL2,deg2,2,3); \ + } + + +int +main() +{ + try + { + std::ofstream logfile("output"); + deallog << std::setprecision (8); + deallog.attach(logfile); + deallog.depth_console(0); + + CHECK_ALL(Q,1,Q,1); + CHECK_ALL(Q,1,Q,2); + CHECK_ALL(Q,1,Q,3); + CHECK_ALL(Q,2,Q,2); + CHECK_ALL(Q,2,Q,3); + CHECK_ALL(Q,3,Q,3); + + CHECK_ALL(DGQ,0,DGQ,0); + CHECK_ALL(DGQ,0,DGQ,1); + CHECK_ALL(DGQ,0,DGQ,2); + CHECK_ALL(DGQ,0,DGQ,4); + CHECK_ALL(DGQ,1,DGQ,1); + CHECK_ALL(DGQ,1,DGQ,3); + CHECK_ALL(DGQ,2,DGQ,2); + CHECK_ALL(DGQ,2,DGQ,2); + CHECK_ALL(DGQ,2,DGQ,4); + CHECK_ALL(DGQ,3,DGQ,3); + + CHECK_ALL(DGP,0,DGP,0); + CHECK_ALL(DGP,0,DGP,1); + CHECK_ALL(DGP,0,DGP,2); + CHECK_ALL(DGP,0,DGP,4); + CHECK_ALL(DGP,1,DGP,1); + CHECK_ALL(DGP,1,DGP,3); + CHECK_ALL(DGP,2,DGP,2); + CHECK_ALL(DGP,2,DGP,2); + CHECK_ALL(DGP,2,DGP,4); + CHECK_ALL(DGP,3,DGP,3); + + return 0; + } + catch (std::exception &exc) + { + deallog << std::endl << std::endl + << "----------------------------------------------------" + << std::endl; + deallog << "Exception on processing: " << std::endl + << exc.what() << std::endl + << "Aborting!" << std::endl + << "----------------------------------------------------" + << std::endl; + return 1; + } + catch (...) + { + deallog << std::endl << std::endl + << "----------------------------------------------------" + << std::endl; + deallog << "Unknown exception!" << std::endl + << "Aborting!" << std::endl + << "----------------------------------------------------" + << std::endl; + return 1; + } +} diff --git a/tests/bits/fe_tools_cpfqpm_05.output b/tests/bits/fe_tools_cpfqpm_05.output new file mode 100644 index 0000000000..5924dcb816 --- /dev/null +++ b/tests/bits/fe_tools_cpfqpm_05.output @@ -0,0 +1,297 @@ + +DEAL::Checking Q1 against Q1 in 1d and spacedim 2 +DEAL::dofs_per_cell=2, n_q_points=2 +DEAL::1.1102230e-16 1.1102230e-16 +DEAL::1.5700925e-16 +DEAL::0.0000000 1.1102230e-16 0.0000000 1.1102230e-16 +DEAL::Checking Q1 against Q1 in 1d and spacedim 2 +DEAL::Checking Q1 against Q1 in 1d and spacedim 3 +DEAL::dofs_per_cell=2, n_q_points=2 +DEAL::1.1102230e-16 1.1102230e-16 +DEAL::1.5700925e-16 +DEAL::0.0000000 1.1102230e-16 0.0000000 1.1102230e-16 +DEAL::Checking Q1 against Q1 in 1d and spacedim 3 +DEAL::Checking Q1 against Q1 in 2d and spacedim 3 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::6.8348105e-16 6.0715322e-16 +DEAL::6.0194655e-16 +DEAL::-2.2204460e-16 6.9388939e-17 -3.3306691e-16 8.3266727e-17 2.2204460e-16 1.1102230e-16 0.0000000 1.5265567e-16 +DEAL::Checking Q1 against Q1 in 2d and spacedim 3 +DEAL::Checking Q1 against Q2 in 1d and spacedim 2 +DEAL::Checking Q2 against Q1 in 1d and spacedim 2 +DEAL::dofs_per_cell=3, n_q_points=3 +DEAL::2.2204460e-16 2.2204460e-16 +DEAL::3.8459254e-16 +DEAL::2.2204460e-16 0.0000000 2.2204460e-16 2.2204460e-16 2.2204460e-16 0.0000000 +DEAL::Checking Q1 against Q2 in 1d and spacedim 3 +DEAL::Checking Q2 against Q1 in 1d and spacedim 3 +DEAL::dofs_per_cell=3, n_q_points=3 +DEAL::2.2204460e-16 2.2204460e-16 +DEAL::3.8459254e-16 +DEAL::2.2204460e-16 0.0000000 2.2204460e-16 2.2204460e-16 2.2204460e-16 0.0000000 +DEAL::Checking Q1 against Q2 in 2d and spacedim 3 +DEAL::Checking Q2 against Q1 in 2d and spacedim 3 +DEAL::dofs_per_cell=9, n_q_points=9 +DEAL::8.0560558e-16 8.3285331e-16 +DEAL::7.7012237e-16 +DEAL::-1.1102230e-16 3.7820330e-17 0.0000000 -1.2767565e-16 0.0000000 4.7210777e-17 -4.4408921e-16 -7.7715612e-17 0.0000000 0.0000000 0.0000000 -7.2164497e-17 0.0000000 4.7327734e-17 0.0000000 -1.6098234e-16 4.4408921e-16 2.8030892e-17 +DEAL::Checking Q1 against Q3 in 1d and spacedim 2 +DEAL::Checking Q3 against Q1 in 1d and spacedim 2 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::6.4965394e-16 8.6562701e-16 +DEAL::7.2411823e-16 +DEAL::-5.5511151e-16 3.2959746e-17 -1.1102230e-16 -1.1102230e-16 -2.2204460e-16 -8.3266727e-17 -2.2204460e-16 1.5612511e-17 +DEAL::Checking Q1 against Q3 in 1d and spacedim 3 +DEAL::Checking Q3 against Q1 in 1d and spacedim 3 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::6.4965394e-16 8.6562701e-16 +DEAL::7.2411823e-16 +DEAL::-5.5511151e-16 3.2959746e-17 -1.1102230e-16 -1.1102230e-16 -2.2204460e-16 -8.3266727e-17 -2.2204460e-16 1.5612511e-17 +DEAL::Checking Q1 against Q3 in 2d and spacedim 3 +DEAL::Checking Q3 against Q1 in 2d and spacedim 3 +DEAL::dofs_per_cell=16, n_q_points=16 +DEAL::1.4809117e-15 1.7010183e-15 +DEAL::1.6019149e-15 +DEAL::-3.3306691e-16 4.0657581e-18 -2.2204460e-16 -2.2551405e-17 2.2204460e-16 -1.7780916e-17 -3.3306691e-16 -5.0415401e-17 0.0000000 5.2041704e-18 -5.5511151e-16 -2.0816682e-17 -2.2204460e-16 -2.4286129e-17 0.0000000 -1.3444107e-17 0.0000000 -3.9031278e-18 -4.4408921e-16 -1.7347235e-17 -2.2204460e-16 -1.0408341e-17 0.0000000 2.4286129e-17 -1.1102230e-16 -4.7840421e-17 -2.2204460e-16 -9.9746600e-18 0.0000000 1.7347235e-18 6.6613381e-16 -4.4343869e-17 +DEAL::Checking Q2 against Q2 in 1d and spacedim 2 +DEAL::Checking Q2 against Q2 in 1d and spacedim 2 +DEAL::Checking Q2 against Q2 in 1d and spacedim 3 +DEAL::Checking Q2 against Q2 in 1d and spacedim 3 +DEAL::Checking Q2 against Q2 in 2d and spacedim 3 +DEAL::Checking Q2 against Q2 in 2d and spacedim 3 +DEAL::Checking Q2 against Q3 in 1d and spacedim 2 +DEAL::Checking Q3 against Q2 in 1d and spacedim 2 +DEAL::Checking Q2 against Q3 in 1d and spacedim 3 +DEAL::Checking Q3 against Q2 in 1d and spacedim 3 +DEAL::Checking Q2 against Q3 in 2d and spacedim 3 +DEAL::Checking Q3 against Q2 in 2d and spacedim 3 +DEAL::Checking Q3 against Q3 in 1d and spacedim 2 +DEAL::Checking Q3 against Q3 in 1d and spacedim 2 +DEAL::Checking Q3 against Q3 in 1d and spacedim 3 +DEAL::Checking Q3 against Q3 in 1d and spacedim 3 +DEAL::Checking Q3 against Q3 in 2d and spacedim 3 +DEAL::Checking Q3 against Q3 in 2d and spacedim 3 +DEAL::Checking DGQ0 against DGQ0 in 1d and spacedim 2 +DEAL::dofs_per_cell=1, n_q_points=1 +DEAL::0.0000000 0.0000000 +DEAL::0.0000000 +DEAL::0.0000000 0.0000000 +DEAL::Checking DGQ0 against DGQ0 in 1d and spacedim 2 +DEAL::Checking DGQ0 against DGQ0 in 1d and spacedim 3 +DEAL::dofs_per_cell=1, n_q_points=1 +DEAL::0.0000000 0.0000000 +DEAL::0.0000000 +DEAL::0.0000000 0.0000000 +DEAL::Checking DGQ0 against DGQ0 in 1d and spacedim 3 +DEAL::Checking DGQ0 against DGQ0 in 2d and spacedim 3 +DEAL::dofs_per_cell=1, n_q_points=1 +DEAL::0.0000000 0.0000000 +DEAL::0.0000000 +DEAL::0.0000000 0.0000000 +DEAL::Checking DGQ0 against DGQ0 in 2d and spacedim 3 +DEAL::Checking DGQ0 against DGQ1 in 1d and spacedim 2 +DEAL::Checking DGQ1 against DGQ0 in 1d and spacedim 2 +DEAL::dofs_per_cell=2, n_q_points=2 +DEAL::1.1102230e-16 1.1102230e-16 +DEAL::1.5700925e-16 +DEAL::0.0000000 1.1102230e-16 0.0000000 1.1102230e-16 +DEAL::Checking DGQ0 against DGQ1 in 1d and spacedim 3 +DEAL::Checking DGQ1 against DGQ0 in 1d and spacedim 3 +DEAL::dofs_per_cell=2, n_q_points=2 +DEAL::1.1102230e-16 1.1102230e-16 +DEAL::1.5700925e-16 +DEAL::0.0000000 1.1102230e-16 0.0000000 1.1102230e-16 +DEAL::Checking DGQ0 against DGQ1 in 2d and spacedim 3 +DEAL::Checking DGQ1 against DGQ0 in 2d and spacedim 3 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::6.8348105e-16 6.0715322e-16 +DEAL::6.0194655e-16 +DEAL::-2.2204460e-16 6.9388939e-17 -3.3306691e-16 8.3266727e-17 2.2204460e-16 1.1102230e-16 0.0000000 1.5265567e-16 +DEAL::Checking DGQ0 against DGQ2 in 1d and spacedim 2 +DEAL::Checking DGQ2 against DGQ0 in 1d and spacedim 2 +DEAL::dofs_per_cell=3, n_q_points=3 +DEAL::2.4980018e-16 2.6367797e-16 +DEAL::3.8609193e-16 +DEAL::2.2204460e-16 2.7755576e-17 2.2204460e-16 2.2204460e-16 2.2204460e-16 0.0000000 +DEAL::Checking DGQ0 against DGQ2 in 1d and spacedim 3 +DEAL::Checking DGQ2 against DGQ0 in 1d and spacedim 3 +DEAL::dofs_per_cell=3, n_q_points=3 +DEAL::2.4980018e-16 2.6367797e-16 +DEAL::3.8609193e-16 +DEAL::2.2204460e-16 2.7755576e-17 2.2204460e-16 2.2204460e-16 2.2204460e-16 0.0000000 +DEAL::Checking DGQ0 against DGQ2 in 2d and spacedim 3 +DEAL::Checking DGQ2 against DGQ0 in 2d and spacedim 3 +DEAL::dofs_per_cell=9, n_q_points=9 +DEAL::5.1967837e-16 5.0201419e-16 +DEAL::5.4101618e-16 +DEAL::-1.1102230e-16 2.4286129e-17 -2.2204460e-16 0.0000000 -1.1102230e-16 6.9388939e-17 0.0000000 -5.5511151e-17 0.0000000 0.0000000 2.2204460e-16 -1.1102230e-16 -1.1102230e-16 4.1633363e-17 0.0000000 2.7755576e-17 -1.1102230e-16 5.5511151e-17 +DEAL::Checking DGQ0 against DGQ4 in 1d and spacedim 2 +DEAL::Checking DGQ4 against DGQ0 in 1d and spacedim 2 +DEAL::dofs_per_cell=5, n_q_points=5 +DEAL::5.0653925e-16 4.0939474e-16 +DEAL::4.1721835e-16 +DEAL::2.2204460e-16 4.8572257e-17 0.0000000 -6.5919492e-17 0.0000000 0.0000000 -1.1102230e-16 -5.8980598e-17 0.0000000 4.8572257e-17 +DEAL::Checking DGQ0 against DGQ4 in 1d and spacedim 3 +DEAL::Checking DGQ4 against DGQ0 in 1d and spacedim 3 +DEAL::dofs_per_cell=5, n_q_points=5 +DEAL::5.0653925e-16 4.0939474e-16 +DEAL::4.1721835e-16 +DEAL::2.2204460e-16 4.8572257e-17 0.0000000 -6.5919492e-17 0.0000000 0.0000000 -1.1102230e-16 -5.8980598e-17 0.0000000 4.8572257e-17 +DEAL::Checking DGQ0 against DGQ4 in 2d and spacedim 3 +DEAL::Checking DGQ4 against DGQ0 in 2d and spacedim 3 +DEAL::dofs_per_cell=25, n_q_points=25 +DEAL::1.8003635e-15 2.3892224e-15 +DEAL::1.9039663e-15 +DEAL::-5.5511151e-16 2.4286129e-17 0.0000000 1.9515639e-17 0.0000000 -1.3877788e-17 -5.5511151e-16 -8.6736174e-18 -4.4408921e-16 -8.2399365e-18 -3.3306691e-16 5.4210109e-18 -3.3306691e-16 -2.2226145e-17 -2.2204460e-16 -2.4286129e-17 -1.1102230e-16 -2.2226145e-17 0.0000000 -1.7997756e-17 -2.2204460e-16 2.7755576e-17 -2.2204460e-16 6.9388939e-17 2.2204460e-16 2.2204460e-16 -1.1102230e-16 -3.8163916e-17 0.0000000 1.3877788e-17 2.2204460e-16 1.8865118e-17 -3.3306691e-16 -2.4502969e-17 -2.2204460e-16 3.4694470e-18 -2.2204460e-16 -1.3010426e-18 -3.3306691e-16 -2.4936650e-17 -4.4408921e-16 -9.1072982e-18 -2.2204460e-16 -1.7347235e-18 0.0000000 -2.0816682e-17 -2.2204460e-16 1.0842022e-18 0.0000000 -1.2143064e-17 +DEAL::Checking DGQ1 against DGQ1 in 1d and spacedim 2 +DEAL::Checking DGQ1 against DGQ1 in 1d and spacedim 2 +DEAL::Checking DGQ1 against DGQ1 in 1d and spacedim 3 +DEAL::Checking DGQ1 against DGQ1 in 1d and spacedim 3 +DEAL::Checking DGQ1 against DGQ1 in 2d and spacedim 3 +DEAL::Checking DGQ1 against DGQ1 in 2d and spacedim 3 +DEAL::Checking DGQ1 against DGQ3 in 1d and spacedim 2 +DEAL::Checking DGQ3 against DGQ1 in 1d and spacedim 2 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::4.3801768e-16 4.4408921e-16 +DEAL::5.0062403e-16 +DEAL::-3.3306691e-16 1.3877788e-17 0.0000000 -9.0205621e-17 -2.2204460e-16 -4.8572257e-17 -2.2204460e-16 5.5511151e-17 +DEAL::Checking DGQ1 against DGQ3 in 1d and spacedim 3 +DEAL::Checking DGQ3 against DGQ1 in 1d and spacedim 3 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::4.3801768e-16 4.4408921e-16 +DEAL::5.0062403e-16 +DEAL::-3.3306691e-16 1.3877788e-17 0.0000000 -9.0205621e-17 -2.2204460e-16 -4.8572257e-17 -2.2204460e-16 5.5511151e-17 +DEAL::Checking DGQ1 against DGQ3 in 2d and spacedim 3 +DEAL::Checking DGQ3 against DGQ1 in 2d and spacedim 3 +DEAL::dofs_per_cell=16, n_q_points=16 +DEAL::1.4873628e-15 1.4771611e-15 +DEAL::1.6644460e-15 +DEAL::-3.3306691e-16 -7.0256301e-17 -5.5511151e-16 -1.3010426e-18 -3.3306691e-16 -4.2500725e-17 0.0000000 -8.6736174e-19 -5.5511151e-16 -2.0816682e-17 -3.3306691e-16 -2.3310347e-17 -5.5511151e-16 -1.7889336e-17 -1.1102230e-16 1.3444107e-17 0.0000000 -3.4694470e-18 -3.3306691e-16 -2.3960868e-17 -4.4408921e-16 -6.4726870e-17 -2.2204460e-16 1.3010426e-17 0.0000000 -1.7347235e-17 -3.3306691e-16 -6.9388939e-18 0.0000000 -3.7730236e-17 4.4408921e-16 -2.4286129e-17 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 2 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 2 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 2d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 2d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 2 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 2 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 1d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 2d and spacedim 3 +DEAL::Checking DGQ2 against DGQ2 in 2d and spacedim 3 +DEAL::Checking DGQ2 against DGQ4 in 1d and spacedim 2 +DEAL::Checking DGQ4 against DGQ2 in 1d and spacedim 2 +DEAL::Checking DGQ2 against DGQ4 in 1d and spacedim 3 +DEAL::Checking DGQ4 against DGQ2 in 1d and spacedim 3 +DEAL::Checking DGQ2 against DGQ4 in 2d and spacedim 3 +DEAL::Checking DGQ4 against DGQ2 in 2d and spacedim 3 +DEAL::Checking DGQ3 against DGQ3 in 1d and spacedim 2 +DEAL::Checking DGQ3 against DGQ3 in 1d and spacedim 2 +DEAL::Checking DGQ3 against DGQ3 in 1d and spacedim 3 +DEAL::Checking DGQ3 against DGQ3 in 1d and spacedim 3 +DEAL::Checking DGQ3 against DGQ3 in 2d and spacedim 3 +DEAL::Checking DGQ3 against DGQ3 in 2d and spacedim 3 +DEAL::Checking DGP0 against DGP0 in 1d and spacedim 2 +DEAL::dofs_per_cell=1, n_q_points=1 +DEAL::0.0000000 0.0000000 +DEAL::0.0000000 +DEAL::0.0000000 0.0000000 +DEAL::Checking DGP0 against DGP0 in 1d and spacedim 2 +DEAL::Checking DGP0 against DGP0 in 1d and spacedim 3 +DEAL::dofs_per_cell=1, n_q_points=1 +DEAL::0.0000000 0.0000000 +DEAL::0.0000000 +DEAL::0.0000000 0.0000000 +DEAL::Checking DGP0 against DGP0 in 1d and spacedim 3 +DEAL::Checking DGP0 against DGP0 in 2d and spacedim 3 +DEAL::dofs_per_cell=1, n_q_points=1 +DEAL::0.0000000 0.0000000 +DEAL::0.0000000 +DEAL::0.0000000 0.0000000 +DEAL::Checking DGP0 against DGP0 in 2d and spacedim 3 +DEAL::Checking DGP0 against DGP1 in 1d and spacedim 2 +DEAL::Checking DGP1 against DGP0 in 1d and spacedim 2 +DEAL::dofs_per_cell=2, n_q_points=2 +DEAL::5.5511151e-17 5.5511151e-17 +DEAL::7.8504623e-17 +DEAL::0.0000000 5.5511151e-17 0.0000000 5.5511151e-17 +DEAL::Checking DGP0 against DGP1 in 1d and spacedim 3 +DEAL::Checking DGP1 against DGP0 in 1d and spacedim 3 +DEAL::dofs_per_cell=2, n_q_points=2 +DEAL::5.5511151e-17 5.5511151e-17 +DEAL::7.8504623e-17 +DEAL::0.0000000 5.5511151e-17 0.0000000 5.5511151e-17 +DEAL::Checking DGP0 against DGP1 in 2d and spacedim 3 +DEAL::Checking DGP1 against DGP0 in 2d and spacedim 3 +DEAL::Checking DGP0 against DGP2 in 1d and spacedim 2 +DEAL::Checking DGP2 against DGP0 in 1d and spacedim 2 +DEAL::dofs_per_cell=3, n_q_points=3 +DEAL::1.1102230e-16 2.2204460e-16 +DEAL::1.3597400e-16 +DEAL::0.0000000 0.0000000 -1.1102230e-16 -1.1102230e-16 0.0000000 0.0000000 +DEAL::Checking DGP0 against DGP2 in 1d and spacedim 3 +DEAL::Checking DGP2 against DGP0 in 1d and spacedim 3 +DEAL::dofs_per_cell=3, n_q_points=3 +DEAL::1.1102230e-16 2.2204460e-16 +DEAL::1.3597400e-16 +DEAL::0.0000000 0.0000000 -1.1102230e-16 -1.1102230e-16 0.0000000 0.0000000 +DEAL::Checking DGP0 against DGP2 in 2d and spacedim 3 +DEAL::Checking DGP2 against DGP0 in 2d and spacedim 3 +DEAL::Checking DGP0 against DGP4 in 1d and spacedim 2 +DEAL::Checking DGP4 against DGP0 in 1d and spacedim 2 +DEAL::dofs_per_cell=5, n_q_points=5 +DEAL::4.4408921e-16 3.7470027e-16 +DEAL::3.3594567e-16 +DEAL::0.0000000 0.0000000 0.0000000 -5.5511151e-17 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 -9.7144515e-17 +DEAL::Checking DGP0 against DGP4 in 1d and spacedim 3 +DEAL::Checking DGP4 against DGP0 in 1d and spacedim 3 +DEAL::dofs_per_cell=5, n_q_points=5 +DEAL::4.4408921e-16 3.7470027e-16 +DEAL::3.3594567e-16 +DEAL::0.0000000 0.0000000 0.0000000 -5.5511151e-17 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 -9.7144515e-17 +DEAL::Checking DGP0 against DGP4 in 2d and spacedim 3 +DEAL::Checking DGP4 against DGP0 in 2d and spacedim 3 +DEAL::Checking DGP1 against DGP1 in 1d and spacedim 2 +DEAL::Checking DGP1 against DGP1 in 1d and spacedim 2 +DEAL::Checking DGP1 against DGP1 in 1d and spacedim 3 +DEAL::Checking DGP1 against DGP1 in 1d and spacedim 3 +DEAL::Checking DGP1 against DGP1 in 2d and spacedim 3 +DEAL::Checking DGP1 against DGP1 in 2d and spacedim 3 +DEAL::Checking DGP1 against DGP3 in 1d and spacedim 2 +DEAL::Checking DGP3 against DGP1 in 1d and spacedim 2 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::3.8857806e-16 4.0245585e-16 +DEAL::3.3680450e-16 +DEAL::0.0000000 -2.7755576e-17 0.0000000 0.0000000 -1.1102230e-16 5.5511151e-17 0.0000000 -1.3877788e-17 +DEAL::Checking DGP1 against DGP3 in 1d and spacedim 3 +DEAL::Checking DGP3 against DGP1 in 1d and spacedim 3 +DEAL::dofs_per_cell=4, n_q_points=4 +DEAL::3.8857806e-16 4.0245585e-16 +DEAL::3.3680450e-16 +DEAL::0.0000000 -2.7755576e-17 0.0000000 0.0000000 -1.1102230e-16 5.5511151e-17 0.0000000 -1.3877788e-17 +DEAL::Checking DGP1 against DGP3 in 2d and spacedim 3 +DEAL::Checking DGP3 against DGP1 in 2d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 2 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 2 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 2d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 2d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 2 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 2 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 1d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 2d and spacedim 3 +DEAL::Checking DGP2 against DGP2 in 2d and spacedim 3 +DEAL::Checking DGP2 against DGP4 in 1d and spacedim 2 +DEAL::Checking DGP4 against DGP2 in 1d and spacedim 2 +DEAL::Checking DGP2 against DGP4 in 1d and spacedim 3 +DEAL::Checking DGP4 against DGP2 in 1d and spacedim 3 +DEAL::Checking DGP2 against DGP4 in 2d and spacedim 3 +DEAL::Checking DGP4 against DGP2 in 2d and spacedim 3 +DEAL::Checking DGP3 against DGP3 in 1d and spacedim 2 +DEAL::Checking DGP3 against DGP3 in 1d and spacedim 2 +DEAL::Checking DGP3 against DGP3 in 1d and spacedim 3 +DEAL::Checking DGP3 against DGP3 in 1d and spacedim 3 +DEAL::Checking DGP3 against DGP3 in 2d and spacedim 3 +DEAL::Checking DGP3 against DGP3 in 2d and spacedim 3