From: guido Date: Fri, 9 Jun 2006 07:01:40 +0000 (+0000) Subject: test all integrer functions of GeometryInfo X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e74b37e5665225794d5a00d59484691c7c5beffa;p=dealii-svn.git test all integrer functions of GeometryInfo git-svn-id: https://svn.dealii.org/trunk@13209 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/tests/bits/geometry_info_2.cc b/tests/bits/geometry_info_2.cc index 21e9f4c1cb..e64a0ea69f 100644 --- a/tests/bits/geometry_info_2.cc +++ b/tests/bits/geometry_info_2.cc @@ -2,7 +2,7 @@ // $Id$ // Version: $Name$ // -// Copyright (C) 2003, 2004, 2005 by the deal.II authors +// Copyright (C) 2003, 2004, 2005, 2006 by the deal.II authors // // This file is subject to QPL and may not be distributed // without copyright and license information. Please refer @@ -12,7 +12,7 @@ //---------------------------- geometry_info_2.cc --------------------------- -// output most all static members of GeometryInfo +// output all integer values and functions of GeometryInfo #include "../tests.h" #include @@ -24,18 +24,85 @@ template void test () { - deallog << GeometryInfo::children_per_cell << std::endl; - deallog << GeometryInfo::faces_per_cell << std::endl; - deallog << GeometryInfo::subfaces_per_face << std::endl; - deallog << GeometryInfo::vertices_per_cell << std::endl; - - deallog << GeometryInfo::vertices_per_face << std::endl; - deallog << GeometryInfo::lines_per_face << std::endl; - deallog << GeometryInfo::quads_per_face << std::endl; + deallog << "children_per_cell " + << GeometryInfo::children_per_cell << std::endl; + deallog << "faces_per_cell " + << GeometryInfo::faces_per_cell << std::endl; + deallog << "subfaces_per_cell " + << GeometryInfo::subfaces_per_face << std::endl; + deallog << "vertices_per_cell " + <::vertices_per_cell << std::endl; + deallog << "lines_per_cell " + << GeometryInfo::lines_per_cell << std::endl; + deallog << "quads_per_cell " + << GeometryInfo::quads_per_cell << std::endl; + deallog << "hexes_per_cell " + << GeometryInfo::hexes_per_cell << std::endl; + + deallog << "vertices_per_face " + << GeometryInfo::vertices_per_face << std::endl; + deallog << "lines_per_face " + << GeometryInfo::lines_per_face << std::endl; + deallog << "quads_per_face " + << GeometryInfo::quads_per_face << std::endl; + + for (unsigned int f=0;f::faces_per_cell;++f) + deallog << "face normal" << f << ' ' + << (GeometryInfo::unit_normal_orientation[f] > 0. + ? '+' : '-') + << "x" << GeometryInfo::unit_normal_direction[f] + << std::endl; + + for (unsigned int f=0;f::faces_per_cell;++f) + { + deallog << "face_children" << f << "[true ]"; + for (unsigned int v=0;v < GeometryInfo::subfaces_per_face;++v) + deallog << ' ' + << GeometryInfo::child_cell_on_face(f, v, true); + deallog << std::endl; + deallog << "face_children" << f << "[false]"; + for (unsigned int v=0;v < GeometryInfo::subfaces_per_face;++v) + deallog << ' ' + << GeometryInfo::child_cell_on_face(f, v, false); + deallog << std::endl; + } - deallog << GeometryInfo::lines_per_cell << std::endl; - deallog << GeometryInfo::quads_per_cell << std::endl; - deallog << GeometryInfo::hexes_per_cell << std::endl; + for (unsigned int f=0;f::faces_per_cell;++f) + { + deallog << "face_vertices" << f << "[true ]"; + for (unsigned int v=0;v < GeometryInfo::vertices_per_face;++v) + deallog << ' ' + << GeometryInfo::face_to_cell_vertices(f, v, true); + deallog << std::endl; + deallog << "face_vertices" << f << "[false]"; + for (unsigned int v=0;v < GeometryInfo::vertices_per_face;++v) + deallog << ' ' + << GeometryInfo::face_to_cell_vertices(f, v, false); + deallog << std::endl; + } + + for (unsigned int f=0;f::faces_per_cell;++f) + { + deallog << "face_lines" << f << "[true ]"; + for (unsigned int v=1;v <= GeometryInfo::lines_per_face;++v) + deallog << ' ' + << GeometryInfo::face_to_cell_lines(f, v-1, true); + deallog << std::endl; + deallog << "face_lines" << f << "[false]"; + for (unsigned int v=1;v <= GeometryInfo::lines_per_face;++v) + deallog << ' ' + << GeometryInfo::face_to_cell_lines(f, v-1, false); + deallog << std::endl; + } + + for (unsigned int f=0;f::lines_per_cell;++f) + { + deallog << "line_vertices" << f; + for (unsigned int v=0;v < GeometryInfo<1>::vertices_per_cell;++v) + deallog << ' ' + << GeometryInfo::line_to_cell_vertices(f, v); + deallog << std::endl; + } } @@ -46,9 +113,14 @@ int main () deallog.depth_console(0); deallog.threshold_double(1.e-10); + deallog.push("1d"); test<1> (); + deallog.pop(); + deallog.push("2d"); test<2> (); + deallog.pop(); + deallog.push("3d"); test<3> (); - + deallog.pop(); return 0; } diff --git a/tests/bits/geometry_info_2/cmp/generic b/tests/bits/geometry_info_2/cmp/generic index b6a0afd9e6..1e87f4ee7f 100644 --- a/tests/bits/geometry_info_2/cmp/generic +++ b/tests/bits/geometry_info_2/cmp/generic @@ -1,31 +1,132 @@ -DEAL::2 -DEAL::2 -DEAL::1 -DEAL::2 -DEAL::1 -DEAL::0 -DEAL::0 -DEAL::1 -DEAL::0 -DEAL::0 -DEAL::4 -DEAL::4 -DEAL::2 -DEAL::4 -DEAL::2 -DEAL::1 -DEAL::0 -DEAL::4 -DEAL::1 -DEAL::0 -DEAL::8 -DEAL::6 -DEAL::4 -DEAL::8 -DEAL::4 -DEAL::4 -DEAL::1 -DEAL::12 -DEAL::6 -DEAL::1 +DEAL:1d::children_per_cell 2 +DEAL:1d::faces_per_cell 2 +DEAL:1d::subfaces_per_cell 1 +DEAL:1d::vertices_per_cell 2 +DEAL:1d::lines_per_cell 1 +DEAL:1d::quads_per_cell 0 +DEAL:1d::hexes_per_cell 0 +DEAL:1d::vertices_per_face 1 +DEAL:1d::lines_per_face 0 +DEAL:1d::quads_per_face 0 +DEAL:1d::face normal0 -x0 +DEAL:1d::face normal1 +x0 +DEAL:1d::face_children0[true ] 0 +DEAL:1d::face_children0[false] 0 +DEAL:1d::face_children1[true ] 1 +DEAL:1d::face_children1[false] 1 +DEAL:1d::face_vertices0[true ] 0 +DEAL:1d::face_vertices0[false] 0 +DEAL:1d::face_vertices1[true ] 1 +DEAL:1d::face_vertices1[false] 1 +DEAL:1d::face_lines0[true ] +DEAL:1d::face_lines0[false] +DEAL:1d::face_lines1[true ] +DEAL:1d::face_lines1[false] +DEAL:1d::line_vertices0 0 1 +DEAL:2d::children_per_cell 4 +DEAL:2d::faces_per_cell 4 +DEAL:2d::subfaces_per_cell 2 +DEAL:2d::vertices_per_cell 4 +DEAL:2d::lines_per_cell 4 +DEAL:2d::quads_per_cell 1 +DEAL:2d::hexes_per_cell 0 +DEAL:2d::vertices_per_face 2 +DEAL:2d::lines_per_face 1 +DEAL:2d::quads_per_face 0 +DEAL:2d::face normal0 -x0 +DEAL:2d::face normal1 +x0 +DEAL:2d::face normal2 -x1 +DEAL:2d::face normal3 +x1 +DEAL:2d::face_children0[true ] 0 2 +DEAL:2d::face_children0[false] 0 2 +DEAL:2d::face_children1[true ] 1 3 +DEAL:2d::face_children1[false] 1 3 +DEAL:2d::face_children2[true ] 0 1 +DEAL:2d::face_children2[false] 0 1 +DEAL:2d::face_children3[true ] 2 3 +DEAL:2d::face_children3[false] 2 3 +DEAL:2d::face_vertices0[true ] 0 2 +DEAL:2d::face_vertices0[false] 0 2 +DEAL:2d::face_vertices1[true ] 1 3 +DEAL:2d::face_vertices1[false] 1 3 +DEAL:2d::face_vertices2[true ] 0 1 +DEAL:2d::face_vertices2[false] 0 1 +DEAL:2d::face_vertices3[true ] 2 3 +DEAL:2d::face_vertices3[false] 2 3 +DEAL:2d::face_lines0[true ] 0 +DEAL:2d::face_lines0[false] 0 +DEAL:2d::face_lines1[true ] 1 +DEAL:2d::face_lines1[false] 1 +DEAL:2d::face_lines2[true ] 2 +DEAL:2d::face_lines2[false] 2 +DEAL:2d::face_lines3[true ] 3 +DEAL:2d::face_lines3[false] 3 +DEAL:2d::line_vertices0 0 2 +DEAL:2d::line_vertices1 1 3 +DEAL:2d::line_vertices2 0 1 +DEAL:2d::line_vertices3 2 3 +DEAL:3d::children_per_cell 8 +DEAL:3d::faces_per_cell 6 +DEAL:3d::subfaces_per_cell 4 +DEAL:3d::vertices_per_cell 8 +DEAL:3d::lines_per_cell 12 +DEAL:3d::quads_per_cell 6 +DEAL:3d::hexes_per_cell 1 +DEAL:3d::vertices_per_face 4 +DEAL:3d::lines_per_face 4 +DEAL:3d::quads_per_face 1 +DEAL:3d::face normal0 -x0 +DEAL:3d::face normal1 +x0 +DEAL:3d::face normal2 -x1 +DEAL:3d::face normal3 +x1 +DEAL:3d::face normal4 -x2 +DEAL:3d::face normal5 +x2 +DEAL:3d::face_children0[true ] 0 2 4 6 +DEAL:3d::face_children0[false] 0 4 2 6 +DEAL:3d::face_children1[true ] 1 3 5 7 +DEAL:3d::face_children1[false] 1 5 3 7 +DEAL:3d::face_children2[true ] 0 4 1 5 +DEAL:3d::face_children2[false] 0 1 4 5 +DEAL:3d::face_children3[true ] 2 6 3 7 +DEAL:3d::face_children3[false] 2 3 6 7 +DEAL:3d::face_children4[true ] 0 1 2 3 +DEAL:3d::face_children4[false] 0 2 1 3 +DEAL:3d::face_children5[true ] 4 5 6 7 +DEAL:3d::face_children5[false] 4 6 5 7 +DEAL:3d::face_vertices0[true ] 0 2 4 6 +DEAL:3d::face_vertices0[false] 0 4 2 6 +DEAL:3d::face_vertices1[true ] 1 3 5 7 +DEAL:3d::face_vertices1[false] 1 5 3 7 +DEAL:3d::face_vertices2[true ] 0 4 1 5 +DEAL:3d::face_vertices2[false] 0 1 4 5 +DEAL:3d::face_vertices3[true ] 2 6 3 7 +DEAL:3d::face_vertices3[false] 2 3 6 7 +DEAL:3d::face_vertices4[true ] 0 1 2 3 +DEAL:3d::face_vertices4[false] 0 2 1 3 +DEAL:3d::face_vertices5[true ] 4 5 6 7 +DEAL:3d::face_vertices5[false] 4 6 5 7 +DEAL:3d::face_lines0[true ] 8 10 0 4 +DEAL:3d::face_lines0[false] 0 4 8 10 +DEAL:3d::face_lines1[true ] 9 11 1 5 +DEAL:3d::face_lines1[false] 1 5 9 11 +DEAL:3d::face_lines2[true ] 2 6 8 9 +DEAL:3d::face_lines2[false] 8 9 2 6 +DEAL:3d::face_lines3[true ] 3 7 10 11 +DEAL:3d::face_lines3[false] 10 11 3 7 +DEAL:3d::face_lines4[true ] 0 1 2 3 +DEAL:3d::face_lines4[false] 2 3 0 1 +DEAL:3d::face_lines5[true ] 4 5 6 7 +DEAL:3d::face_lines5[false] 6 7 4 5 +DEAL:3d::line_vertices0 0 2 +DEAL:3d::line_vertices1 1 3 +DEAL:3d::line_vertices2 0 1 +DEAL:3d::line_vertices3 2 3 +DEAL:3d::line_vertices4 4 6 +DEAL:3d::line_vertices5 5 7 +DEAL:3d::line_vertices6 4 5 +DEAL:3d::line_vertices7 6 7 +DEAL:3d::line_vertices8 0 4 +DEAL:3d::line_vertices9 1 5 +DEAL:3d::line_vertices10 2 6 +DEAL:3d::line_vertices11 3 7