From 408c1c0146294c9bc14875b84ece310be4afc89f Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Wed, 5 Apr 2017 11:12:00 -0600 Subject: [PATCH] Convert tests. Specifically, convert all tests from FE::interpolate to FE::convert_generalized_support_point_values_to_nodal_values. Since the former had three variants but that latter only one, this also requires deleting some code and updating test results. --- tests/fe/fe_rannacher_turek_01.cc | 12 +++--- tests/fe/interpolate_q1.cc | 56 ++++++++------------------- tests/fe/interpolate_q1.output | 42 ++++++++++---------- tests/fe/interpolate_q_bubbles.cc | 18 +++------ tests/fe/interpolate_q_bubbles.output | 24 ++++++------ tests/fe/interpolate_q_dg0.cc | 20 +++------- tests/fe/interpolate_q_dg0.output | 24 ++++++------ tests/fe/interpolate_q_iso_q1.cc | 20 +++------- tests/fe/interpolate_q_iso_q1.output | 18 ++++----- tests/fe/interpolate_rt.cc | 23 +++-------- tests/fe/interpolate_rt.output | 8 ++-- tests/fe/interpolate_rtn.cc | 23 +++-------- tests/fe/interpolate_rtn.output | 12 +++--- tests/fe/interpolate_system.cc | 43 ++++++-------------- tests/fe/interpolate_system.output | 18 ++++----- 15 files changed, 135 insertions(+), 226 deletions(-) diff --git a/tests/fe/fe_rannacher_turek_01.cc b/tests/fe/fe_rannacher_turek_01.cc index 55b0d6659d..bf749e3f8b 100644 --- a/tests/fe/fe_rannacher_turek_01.cc +++ b/tests/fe/fe_rannacher_turek_01.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2015 by the deal.II authors +// Copyright (C) 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -61,14 +61,14 @@ void test_nodal_matrix() // simply assumes that there are dim components. Thus we do it ourselves. const unsigned int n_dofs = fe.dofs_per_cell; const std::vector > &points = fe.get_generalized_support_points(); - std::vector values(points.size()); + std::vector > values(points.size(), Vector(1)); std::vector local_dofs(n_dofs); for (unsigned int i = 0; i < n_dofs; ++i) { for (unsigned int k = 0; k < values.size(); ++k) - values[k] = fe.shape_value(i, points[k]); - fe.interpolate(local_dofs, values); + values[k][0] = fe.shape_value(i, points[k]); + fe.convert_generalized_support_point_values_to_nodal_values(values, local_dofs); for (unsigned int j=0; j < n_dofs; ++j) N(j,i) = local_dofs[j]; @@ -121,11 +121,11 @@ void test_interpolation() { fev.reinit(cell); - std::vector values(quadrature.size()); + std::vector > values(quadrature.size(), Vector(1)); fev.get_function_values(input_vector, values); std::vector interpolated_local_dofs(n_dofs); - fe.interpolate(interpolated_local_dofs, values); + fe.convert_generalized_support_point_values_to_nodal_values(values, interpolated_local_dofs); Vector local_dofs(n_dofs); cell->get_dof_values(input_vector, local_dofs); diff --git a/tests/fe/interpolate_q1.cc b/tests/fe/interpolate_q1.cc index 4e7d54486f..cf2751005d 100644 --- a/tests/fe/interpolate_q1.cc +++ b/tests/fe/interpolate_q1.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2005 - 2015 by the deal.II authors +// Copyright (C) 2005 - 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -35,19 +35,11 @@ void check(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(1, std::vector(fe.get_unit_support_points().size())); - f.value_list(fe.get_unit_support_points(), values[0]); - fe.interpolate(dofs, values[0]); - deallog << " value " << difference(fe,dofs,f); - fe.interpolate(dofs, values); - deallog << " vector " << difference(fe,dofs,f); - - std::vector > - vectors(fe.get_unit_support_points().size(), Vector(1)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - fe.interpolate(dofs, vectors, 0); - deallog << " Vector " << difference(fe,dofs,f) << std::endl; + std::vector > values (fe.get_unit_support_points().size(), + Vector(1)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << difference(fe,dofs,f) << std::endl; } template @@ -59,19 +51,11 @@ void check_dg(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(1, std::vector(fe.get_unit_support_points().size())); - f.value_list(fe.get_unit_support_points(), values[0]); - fe.interpolate(dofs, values[0]); - deallog << " value " << difference(fe,dofs,f); - fe.interpolate(dofs, values); - deallog << " vector " << difference(fe,dofs,f); - - std::vector > - vectors(fe.get_unit_support_points().size(), Vector(1)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - fe.interpolate(dofs, vectors, 0); - deallog << " Vector " << difference(fe,dofs,f) << std::endl; + std::vector > values (fe.get_unit_support_points().size(), + Vector(1)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << difference(fe,dofs,f) << std::endl; } template @@ -84,19 +68,11 @@ void check_dg_lobatto(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(1, std::vector(fe.get_unit_support_points().size())); - f.value_list(fe.get_unit_support_points(), values[0]); - fe.interpolate(dofs, values[0]); - deallog << " value " << difference(fe,dofs,f); - fe.interpolate(dofs, values); - deallog << " vector " << difference(fe,dofs,f); - - std::vector > - vectors(fe.get_unit_support_points().size(), Vector(1)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - fe.interpolate(dofs, vectors, 0); - deallog << " Vector " << difference(fe,dofs,f) << std::endl; + std::vector > values (fe.get_unit_support_points().size(), + Vector(1)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << difference(fe,dofs,f) << std::endl; } int main() diff --git a/tests/fe/interpolate_q1.output b/tests/fe/interpolate_q1.output index d1fe395621..914c987927 100644 --- a/tests/fe/interpolate_q1.output +++ b/tests/fe/interpolate_q1.output @@ -1,22 +1,22 @@ -DEAL::FE_Q<1>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q<1>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q<1>(3) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<1>(1) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<1>(2) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<1>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q<2>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_DGQ<3>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q<3>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q<3>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q<3>(3) value 0 vector 0 Vector 0 +DEAL::FE_Q<1>(1) vector 0 +DEAL::FE_Q<1>(2) vector 0 +DEAL::FE_Q<1>(3) vector 0 +DEAL::FE_DGQ<1>(1) vector 0 +DEAL::FE_DGQ<1>(2) vector 0 +DEAL::FE_DGQ<1>(3) vector 0 +DEAL::FE_Q<2>(1) vector 0 +DEAL::FE_Q<2>(2) vector 0 +DEAL::FE_Q<2>(3) vector 0 +DEAL::FE_DGQ<2>(2) vector 0 +DEAL::FE_DGQ<2>(3) vector 0 +DEAL::FE_Q<2>(2) vector 0 +DEAL::FE_Q<2>(3) vector 0 +DEAL::FE_DGQ<2>(2) vector 0 +DEAL::FE_DGQ<2>(3) vector 0 +DEAL::FE_DGQ<2>(3) vector 0 +DEAL::FE_Q<2>(3) vector 0 +DEAL::FE_DGQ<3>(1) vector 0 +DEAL::FE_Q<3>(1) vector 0 +DEAL::FE_Q<3>(2) vector 0 +DEAL::FE_Q<3>(3) vector 0 diff --git a/tests/fe/interpolate_q_bubbles.cc b/tests/fe/interpolate_q_bubbles.cc index 795be3a4b8..195ed40ac0 100644 --- a/tests/fe/interpolate_q_bubbles.cc +++ b/tests/fe/interpolate_q_bubbles.cc @@ -31,19 +31,11 @@ void check_q_bubbles(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(1, std::vector(fe.get_unit_support_points().size())); - f.value_list(fe.get_unit_support_points(), values[0]); - fe.interpolate(dofs, values[0]); - deallog << " value " << difference(fe,dofs,f); - fe.interpolate(dofs, values); - deallog << " vector " << difference(fe,dofs,f); - - std::vector > - vectors(fe.get_unit_support_points().size(), Vector(1)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - fe.interpolate(dofs, vectors, 0); - deallog << " Vector " << difference(fe,dofs,f) << std::endl; + std::vector > values (fe.get_unit_support_points().size(), + Vector(1)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " value " << difference(fe,dofs,f) << std::endl; } int main() diff --git a/tests/fe/interpolate_q_bubbles.output b/tests/fe/interpolate_q_bubbles.output index 32a75614b6..fc4740031b 100644 --- a/tests/fe/interpolate_q_bubbles.output +++ b/tests/fe/interpolate_q_bubbles.output @@ -1,13 +1,13 @@ -DEAL::FE_Q_Bubbles<1>(QUnknownNodes(2)) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<1>(QUnknownNodes(3)) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<1>(QUnknownNodes(4)) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<2>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<3>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<3>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_Bubbles<3>(3) value 0 vector 0 Vector 0 +DEAL::FE_Q_Bubbles<1>(QUnknownNodes(2)) value 0 +DEAL::FE_Q_Bubbles<1>(QUnknownNodes(3)) value 0 +DEAL::FE_Q_Bubbles<1>(QUnknownNodes(4)) value 0 +DEAL::FE_Q_Bubbles<2>(1) value 0 +DEAL::FE_Q_Bubbles<2>(2) value 0 +DEAL::FE_Q_Bubbles<2>(3) value 0 +DEAL::FE_Q_Bubbles<2>(2) value 0 +DEAL::FE_Q_Bubbles<2>(3) value 0 +DEAL::FE_Q_Bubbles<2>(3) value 0 +DEAL::FE_Q_Bubbles<3>(1) value 0 +DEAL::FE_Q_Bubbles<3>(2) value 0 +DEAL::FE_Q_Bubbles<3>(3) value 0 diff --git a/tests/fe/interpolate_q_dg0.cc b/tests/fe/interpolate_q_dg0.cc index 2901bb24f8..ba744a1c2a 100644 --- a/tests/fe/interpolate_q_dg0.cc +++ b/tests/fe/interpolate_q_dg0.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2005 - 2015 by the deal.II authors +// Copyright (C) 2005 - 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -31,19 +31,11 @@ void check_q_dg0(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(1, std::vector(fe.get_unit_support_points().size())); - f.value_list(fe.get_unit_support_points(), values[0]); - fe.interpolate(dofs, values[0]); - deallog << " value " << difference(fe,dofs,f); - fe.interpolate(dofs, values); - deallog << " vector " << difference(fe,dofs,f); - - std::vector > - vectors(fe.get_unit_support_points().size(), Vector(1)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - fe.interpolate(dofs, vectors, 0); - deallog << " Vector " << difference(fe,dofs,f) << std::endl; + std::vector > values (fe.get_unit_support_points().size(), + Vector(1)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << difference(fe,dofs,f) << std::endl; } int main() diff --git a/tests/fe/interpolate_q_dg0.output b/tests/fe/interpolate_q_dg0.output index 697d43ac5c..1dc3c71dc3 100644 --- a/tests/fe/interpolate_q_dg0.output +++ b/tests/fe/interpolate_q_dg0.output @@ -1,13 +1,13 @@ -DEAL::FE_Q_DG0<1>(QUnknownNodes(1)) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<1>(QUnknownNodes(2)) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<1>(QUnknownNodes(3)) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<2>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<3>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<3>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_DG0<3>(3) value 0 vector 0 Vector 0 +DEAL::FE_Q_DG0<1>(QUnknownNodes(1)) vector 0 +DEAL::FE_Q_DG0<1>(QUnknownNodes(2)) vector 0 +DEAL::FE_Q_DG0<1>(QUnknownNodes(3)) vector 0 +DEAL::FE_Q_DG0<2>(1) vector 0 +DEAL::FE_Q_DG0<2>(2) vector 0 +DEAL::FE_Q_DG0<2>(3) vector 0 +DEAL::FE_Q_DG0<2>(2) vector 0 +DEAL::FE_Q_DG0<2>(3) vector 0 +DEAL::FE_Q_DG0<2>(3) vector 0 +DEAL::FE_Q_DG0<3>(1) vector 0 +DEAL::FE_Q_DG0<3>(2) vector 0 +DEAL::FE_Q_DG0<3>(3) vector 0 diff --git a/tests/fe/interpolate_q_iso_q1.cc b/tests/fe/interpolate_q_iso_q1.cc index 80ed3cc0bd..ef4caa018f 100644 --- a/tests/fe/interpolate_q_iso_q1.cc +++ b/tests/fe/interpolate_q_iso_q1.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2005 - 2015 by the deal.II authors +// Copyright (C) 2005 - 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -33,19 +33,11 @@ void check(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(1, std::vector(fe.get_unit_support_points().size())); - f.value_list(fe.get_unit_support_points(), values[0]); - fe.interpolate(dofs, values[0]); - deallog << " value " << difference(fe,dofs,f); - fe.interpolate(dofs, values); - deallog << " vector " << difference(fe,dofs,f); - - std::vector > - vectors(fe.get_unit_support_points().size(), Vector(1)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - fe.interpolate(dofs, vectors, 0); - deallog << " Vector " << difference(fe,dofs,f) << std::endl; + std::vector > values (fe.get_unit_support_points().size(), + Vector(1)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << difference(fe,dofs,f) << std::endl; } int main() diff --git a/tests/fe/interpolate_q_iso_q1.output b/tests/fe/interpolate_q_iso_q1.output index bebd556582..67df989d8d 100644 --- a/tests/fe/interpolate_q_iso_q1.output +++ b/tests/fe/interpolate_q_iso_q1.output @@ -1,10 +1,10 @@ -DEAL::FE_Q_iso_Q1<1>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<1>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<1>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<2>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<2>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<2>(3) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<3>(1) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<3>(2) value 0 vector 0 Vector 0 -DEAL::FE_Q_iso_Q1<3>(3) value 0 vector 0 Vector 0 +DEAL::FE_Q_iso_Q1<1>(1) vector 0 +DEAL::FE_Q_iso_Q1<1>(2) vector 0 +DEAL::FE_Q_iso_Q1<1>(3) vector 0 +DEAL::FE_Q_iso_Q1<2>(1) vector 0 +DEAL::FE_Q_iso_Q1<2>(2) vector 0 +DEAL::FE_Q_iso_Q1<2>(3) vector 0 +DEAL::FE_Q_iso_Q1<3>(1) vector 0 +DEAL::FE_Q_iso_Q1<3>(2) vector 0 +DEAL::FE_Q_iso_Q1<3>(3) vector 0 diff --git a/tests/fe/interpolate_rt.cc b/tests/fe/interpolate_rt.cc index 8d4d389a73..2621a91c39 100644 --- a/tests/fe/interpolate_rt.cc +++ b/tests/fe/interpolate_rt.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2005 - 2015 by the deal.II authors +// Copyright (C) 2005 - 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -34,22 +34,11 @@ void check1(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(dim, std::vector(fe.get_generalized_support_points().size())); - std::vector > - vectors(fe.get_generalized_support_points().size(), - Vector(dim)); - f.vector_value_list(fe.get_generalized_support_points(), vectors); - - for (unsigned int c=0; c > values (fe.get_generalized_support_points().size(), + Vector(dim)); + f.vector_value_list(fe.get_generalized_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << vector_difference(fe,dofs,f,0) << std::endl; } int main() diff --git a/tests/fe/interpolate_rt.output b/tests/fe/interpolate_rt.output index f86f5e3f91..09b99bb216 100644 --- a/tests/fe/interpolate_rt.output +++ b/tests/fe/interpolate_rt.output @@ -1,5 +1,5 @@ -DEAL::FE_RaviartThomas<2>(1) 12 vector 0 Vector 0 -DEAL::FE_RaviartThomas<2>(2) 21 vector 0 Vector 0 -DEAL::FE_RaviartThomas<2>(2) 21 vector 0 Vector 0 -DEAL::FE_RaviartThomas<2>(3) 32 vector 0 Vector 0 +DEAL::FE_RaviartThomas<2>(1) 12 vector 0 +DEAL::FE_RaviartThomas<2>(2) 21 vector 0 +DEAL::FE_RaviartThomas<2>(2) 21 vector 0 +DEAL::FE_RaviartThomas<2>(3) 32 vector 0 diff --git a/tests/fe/interpolate_rtn.cc b/tests/fe/interpolate_rtn.cc index 4516024fec..57442dd8fd 100644 --- a/tests/fe/interpolate_rtn.cc +++ b/tests/fe/interpolate_rtn.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2005 - 2015 by the deal.II authors +// Copyright (C) 2005 - 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -34,22 +34,11 @@ void check1(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(dim, std::vector(fe.get_generalized_support_points().size())); - std::vector > - vectors(fe.get_generalized_support_points().size(), - Vector(dim)); - f.vector_value_list(fe.get_generalized_support_points(), vectors); - - for (unsigned int c=0; c > values (fe.get_generalized_support_points().size(), + Vector(dim)); + f.vector_value_list(fe.get_generalized_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << vector_difference(fe,dofs,f,0) << std::endl; } int main() diff --git a/tests/fe/interpolate_rtn.output b/tests/fe/interpolate_rtn.output index cb364a00e3..d20f35a354 100644 --- a/tests/fe/interpolate_rtn.output +++ b/tests/fe/interpolate_rtn.output @@ -1,7 +1,7 @@ -DEAL::FE_RaviartThomasNodal<2>(1) 12 vector 0 Vector 0 -DEAL::FE_RaviartThomasNodal<2>(2) 24 vector 0 Vector 0 -DEAL::FE_RaviartThomasNodal<2>(2) 24 vector 0 Vector 0 -DEAL::FE_RaviartThomasNodal<2>(3) 40 vector 0 Vector 0 -DEAL::FE_RaviartThomasNodal<3>(1) 36 vector 0 Vector 0 -DEAL::FE_RaviartThomasNodal<3>(2) 108 vector 0 Vector 0 +DEAL::FE_RaviartThomasNodal<2>(1) 12 vector 0 +DEAL::FE_RaviartThomasNodal<2>(2) 24 vector 0 +DEAL::FE_RaviartThomasNodal<2>(2) 24 vector 0 +DEAL::FE_RaviartThomasNodal<2>(3) 40 vector 0 +DEAL::FE_RaviartThomasNodal<3>(1) 36 vector 0 +DEAL::FE_RaviartThomasNodal<3>(2) 108 vector 0 diff --git a/tests/fe/interpolate_system.cc b/tests/fe/interpolate_system.cc index f13d0de6b2..b0b7eb936e 100644 --- a/tests/fe/interpolate_system.cc +++ b/tests/fe/interpolate_system.cc @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2005 - 2015 by the deal.II authors +// Copyright (C) 2005 - 2015, 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -36,21 +36,11 @@ void check1(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(comp, std::vector(fe.get_unit_support_points().size())); - std::vector > - vectors(fe.get_unit_support_points().size(), - Vector(f.n_components)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - for (unsigned int c=0; c > values (fe.get_unit_support_points().size(), + Vector(comp)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << vector_difference(fe,dofs,f,0) << std::endl; } template @@ -68,22 +58,11 @@ void check3(const Function &f, std::vector dofs(fe.dofs_per_cell); - std::vector > - values(f.n_components, - std::vector(fe.get_unit_support_points().size())); - std::vector > - vectors(fe.get_unit_support_points().size(), - Vector(f.n_components)); - f.vector_value_list(fe.get_unit_support_points(), vectors); - for (unsigned int c=0; c > values (fe.get_unit_support_points().size(), + Vector(f.n_components)); + f.vector_value_list(fe.get_unit_support_points(), values); + fe.convert_generalized_support_point_values_to_nodal_values(values, dofs); + deallog << " vector " << vector_difference(fe,dofs,f,0) << std::endl; } int main() diff --git a/tests/fe/interpolate_system.output b/tests/fe/interpolate_system.output index d8ce30bb14..fe9df9afb3 100644 --- a/tests/fe/interpolate_system.output +++ b/tests/fe/interpolate_system.output @@ -1,10 +1,10 @@ -DEAL::FESystem<1>[FE_Q<1>(1)^2] vector 0 Vector 0 -DEAL::FESystem<1>[FE_Q<1>(2)^2] vector 0 Vector 0 -DEAL::FESystem<1>[FE_Q<1>(3)^2] vector 0 Vector 0 -DEAL::FESystem<2>[FE_Q<2>(2)^3] vector 0 Vector 0 -DEAL::FESystem<2>[FE_Q<2>(3)^3] vector 0 Vector 0 -DEAL::FESystem<3>[FE_Q<3>(1)^3] vector 0 Vector 0 -DEAL::FESystem<3>[FE_Q<3>(2)^3] vector 0 Vector 0 -DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q<2>(2)^3-FE_Q<2>(3)^4] vector 0 Vector 0 -DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q<3>(2)^3-FE_Q<3>(3)^4] vector 0 Vector 0 +DEAL::FESystem<1>[FE_Q<1>(1)^2] vector 0 +DEAL::FESystem<1>[FE_Q<1>(2)^2] vector 0 +DEAL::FESystem<1>[FE_Q<1>(3)^2] vector 0 +DEAL::FESystem<2>[FE_Q<2>(2)^3] vector 0 +DEAL::FESystem<2>[FE_Q<2>(3)^3] vector 0 +DEAL::FESystem<3>[FE_Q<3>(1)^3] vector 0 +DEAL::FESystem<3>[FE_Q<3>(2)^3] vector 0 +DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q<2>(2)^3-FE_Q<2>(3)^4] vector 0 +DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q<3>(2)^3-FE_Q<3>(3)^4] vector 0 -- 2.39.5