From 1a1ea7394855dff95c660beb0abb0efe84c82302 Mon Sep 17 00:00:00 2001 From: Guido Kanschat Date: Mon, 13 Feb 2006 16:36:19 +0000 Subject: [PATCH] DoFHandler not a friend of Triangulation anymore git-svn-id: https://svn.dealii.org/trunk@12364 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/include/grid/tria.h | 3 +- deal.II/deal.II/source/dofs/dof_handler.cc | 68 ++++++++++++---------- 2 files changed, 38 insertions(+), 33 deletions(-) diff --git a/deal.II/deal.II/include/grid/tria.h b/deal.II/deal.II/include/grid/tria.h index f115dddce4..f26e9d7b87 100644 --- a/deal.II/deal.II/include/grid/tria.h +++ b/deal.II/deal.II/include/grid/tria.h @@ -3086,8 +3086,7 @@ class Triangulation : public Subscriptor friend class TriaRawIterator<3,TriaObjectAccessor<2, 3> >; friend class TriaRawIterator<3,TriaObjectAccessor<3, 3> >; friend class TriaRawIterator<3,CellAccessor<3> >; - - friend class DoFHandler; + friend class hp::DoFHandler; friend class MGDoFHandler; }; diff --git a/deal.II/deal.II/source/dofs/dof_handler.cc b/deal.II/deal.II/source/dofs/dof_handler.cc index f59756d615..ab44699328 100644 --- a/deal.II/deal.II/source/dofs/dof_handler.cc +++ b/deal.II/deal.II/source/dofs/dof_handler.cc @@ -1671,9 +1671,9 @@ void DoFHandler<1>::renumber_dofs (const std::vector &new_numbers) else // if index is invalid_dof_index: check if this one // really is unused - Assert (tria->vertices_used[(i-vertex_dofs.begin()) / - selected_fe->dofs_per_vertex] == false, - ExcInternalError ()); +// Assert (tria->vertices_used[(i-vertex_dofs.begin()) / +// selected_fe->dofs_per_vertex] == false, +// ExcInternalError ()); for (unsigned int level=0; level::iterator i=levels[level]->line_dofs.begin(); @@ -1719,9 +1719,9 @@ void DoFHandler<2>::renumber_dofs (const std::vector &new_numbers) else // if index is invalid_dof_index: check if this one // really is unused - Assert (tria->vertices_used[(i-vertex_dofs.begin()) / - selected_fe->dofs_per_vertex] == false, - ExcInternalError ()); +// Assert (tria->vertices_used[(i-vertex_dofs.begin()) / +// selected_fe->dofs_per_vertex] == false, +// ExcInternalError ()); for (unsigned int level=0; level::renumber_dofs (const std::vector &new_numbers) else // if index is invalid_dof_index: check if this one // really is unused - Assert (tria->vertices_used[(i-vertex_dofs.begin()) / - selected_fe->dofs_per_vertex] == false, - ExcInternalError ()); +// Assert (tria->vertices_used[(i-vertex_dofs.begin()) / +// selected_fe->dofs_per_vertex] == false, +// ExcInternalError ()); for (unsigned int level=0; level::reserve_space () { // their size clear_space (); - vertex_dofs.resize(tria->vertices.size()*selected_fe->dofs_per_vertex, + vertex_dofs.resize(tria->n_vertices()*selected_fe->dofs_per_vertex, invalid_dof_index); for (unsigned int i=0; in_levels(); ++i) { levels.push_back (new internal::DoFHandler::DoFLevel<1>); - levels.back()->line_dofs = std::vector(tria->levels[i]->lines.lines.size() * - selected_fe->dofs_per_line, - invalid_dof_index); - }; + levels.back()->line_dofs + = std::vector(tria->n_raw_lines(i) * + selected_fe->dofs_per_line, + invalid_dof_index); + } } @@ -2005,19 +2006,21 @@ void DoFHandler<2>::reserve_space () { // their size clear_space (); - vertex_dofs.resize(tria->vertices.size()*selected_fe->dofs_per_vertex, + vertex_dofs.resize(tria->n_vertices()*selected_fe->dofs_per_vertex, invalid_dof_index); for (unsigned int i=0; in_levels(); ++i) { levels.push_back (new internal::DoFHandler::DoFLevel<2>); - levels.back()->line_dofs = std::vector (tria->levels[i]->lines.lines.size() * - selected_fe->dofs_per_line, - invalid_dof_index); - levels.back()->quad_dofs = std::vector (tria->levels[i]->quads.quads.size() * - selected_fe->dofs_per_quad, - invalid_dof_index); + levels.back()->line_dofs + = std::vector (tria->n_raw_lines(i) * + selected_fe->dofs_per_line, + invalid_dof_index); + levels.back()->quad_dofs + = std::vector (tria->n_raw_quads(i) * + selected_fe->dofs_per_quad, + invalid_dof_index); }; } @@ -2037,22 +2040,25 @@ void DoFHandler<3>::reserve_space () { // their size clear_space (); - vertex_dofs.resize(tria->vertices.size()*selected_fe->dofs_per_vertex, + vertex_dofs.resize(tria->n_vertices()*selected_fe->dofs_per_vertex, invalid_dof_index); for (unsigned int i=0; in_levels(); ++i) { levels.push_back (new internal::DoFHandler::DoFLevel<3>); - levels.back()->line_dofs = std::vector (tria->levels[i]->lines.lines.size() * - selected_fe->dofs_per_line, - invalid_dof_index); - levels.back()->quad_dofs = std::vector (tria->levels[i]->quads.quads.size() * - selected_fe->dofs_per_quad, - invalid_dof_index); - levels.back()->hex_dofs = std::vector (tria->levels[i]->hexes.hexes.size() * - selected_fe->dofs_per_hex, - invalid_dof_index); + levels.back()->line_dofs + = std::vector (tria->n_raw_lines(i) * + selected_fe->dofs_per_line, + invalid_dof_index); + levels.back()->quad_dofs + = std::vector (tria->n_raw_quads(i) * + selected_fe->dofs_per_quad, + invalid_dof_index); + levels.back()->hex_dofs + = std::vector (tria->n_raw_hexs(i) * + selected_fe->dofs_per_hex, + invalid_dof_index); }; } -- 2.39.5