std::vector<bool> fixed_dofs (dof_handler.n_dofs());
- std::set<unsigned char> boundary_indicators;
+ std::set<types::boundary_id_t> boundary_indicators;
boundary_indicators.insert (0);
// get a list of those boundary DoFs which
bc_component_select[2] = false;
std::vector<bool> ned_boundary_dofs (dof_handler.n_dofs());
- std::set<unsigned char> boundary_indicators;
+ std::set<types::boundary_id_t> boundary_indicators;
boundary_indicators.insert (0);
DoFTools::extract_boundary_dofs (dof_handler,
bc_component_select,
// (the pressure is assumed to be set to 1
// on the boundary)
std::vector<bool> p_boundary_dofs (dof_handler.n_dofs());
- std::set<unsigned char> boundary_indicators;
+ std::set<types::boundary_id_t> boundary_indicators;
boundary_indicators.insert (0);
DoFTools::extract_boundary_dofs (dof_handler,
bc_component_select,
// third further restrict to
// boundary indicator 0
{
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
DoFTools::extract_boundary_dofs (dof_handler,
component_select,
// check
// DoFTools::map_dof_to_boundary_indices(const DoFHandler<int> &,
-// const std::set<unsigned char> &,
+// const std::set<types::boundary_id_t> &,
// std::vector<unsigned int> &)
check_this (const DoFHandler<dim> &dof_handler)
{
std::vector<unsigned int> map(dof_handler.n_dofs());
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
// check for boundary id 0 alone
boundary_ids.insert (0);
deallog << dof_handler.n_boundary_dofs(fm) << std::endl;
// with std::set
- std::set<unsigned char> s;
+ std::set<types::boundary_id_t> s;
s.insert (0);
deallog << dof_handler.n_boundary_dofs(s) << std::endl;
return;
std::vector<unsigned int> map (dof_handler.n_dofs());
- std::set<unsigned char> set;
+ std::set<types::boundary_id_t> set;
set.insert (0);
DoFTools::map_dof_to_boundary_indices (dof_handler, set, map);
return;
std::vector<unsigned int> map (dof_handler.n_dofs());
- std::set<unsigned char> set;
+ std::set<types::boundary_id_t> set;
set.insert (0);
DoFTools::map_dof_to_boundary_indices (dof_handler, set, map);
return;
std::vector<unsigned int> map (dof_handler.n_dofs());
- std::set<unsigned char> set;
+ std::set<types::boundary_id_t> set;
set.insert (0);
DoFTools::map_dof_to_boundary_indices (dof_handler, set, map);
return;
std::vector<unsigned int> map (dof_handler.n_dofs());
- std::set<unsigned char> set;
+ std::set<types::boundary_id_t> set;
set.insert (0);
DoFTools::map_dof_to_boundary_indices (dof_handler, set, map);
return;
std::vector<unsigned int> map (dof_handler.n_dofs());
- std::set<unsigned char> set;
+ std::set<types::boundary_id_t> set;
set.insert (0);
DoFTools::map_dof_to_boundary_indices (dof_handler, set, map);
return;
std::vector<unsigned int> map (dof_handler.n_dofs());
- std::set<unsigned char> set;
+ std::set<types::boundary_id_t> set;
set.insert (0);
DoFTools::map_dof_to_boundary_indices (dof_handler, set, map);
// third further restrict to
// boundary indicator 0
{
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
DoFTools::extract_dofs_with_support_on_boundary (dof_handler,
component_select,
MappingQ<dim> mapping(3);
Quadrature<dim-1> &q_face = get_q_face(function);
- std::map<unsigned char,const Function<dim>*> neumann_bc;
+ std::map<types::boundary_id_t,const Function<dim>*> neumann_bc;
neumann_bc[0] = &function;
Vector<double> v (dof.n_dofs());
MappingQ<dim> mapping(3);
Quadrature<dim-1> &q_face = get_q_face(function);
- std::map<unsigned char,const Function<dim>*> neumann_bc;
+ std::map<types::boundary_id_t,const Function<dim>*> neumann_bc;
neumann_bc[0] = &function;
Vector<double> v (dof.n_dofs());
Triangulation<1> triangulation;
GridGenerator::hyper_cube (triangulation, -1, 1);
- const std::vector<unsigned char> indicators = triangulation.get_boundary_indicators();
+ const std::vector<types::boundary_id_t> indicators = triangulation.get_boundary_indicators();
for (unsigned int i=0; i<indicators.size(); ++i)
deallog << int (indicators[i]) << std::endl;
//---------------------------------------------------------------------------
// $Id$
-// Version: $Name$
+// Version: $Name$
//
-// Copyright (C) 2005, 2006 by the deal.II authors
+// Copyright (C) 2005, 2006, 2012 by the deal.II authors
//
// This file is subject to QPL and may not be distributed
// without copyright and license information. Please refer
#include <iomanip>
-template <int dim> Table<dim,unsigned char> material_ids();
+template <int dim> Table<dim,types::material_id_t> material_ids();
-template <> Table<1,unsigned char> material_ids<1>()
+template <> Table<1,types::material_id_t> material_ids<1>()
{
- Table<1,unsigned char> t(2);
+ Table<1,types::material_id_t> t(2);
for (unsigned int i=0; i<2; ++i)
t[i] = 1;
return t;
}
-template <> Table<2,unsigned char> material_ids<2>()
+template <> Table<2,types::material_id_t> material_ids<2>()
{
- Table<2,unsigned char> t(2,3);
+ Table<2,types::material_id_t> t(2,3);
for (unsigned int i=0; i<2; ++i)
for (unsigned int j=0; j<3; ++j)
t[i][j] = 1;
// produce a hole in the middle
- t[1][1] = (unsigned char)(-1);
+ t[1][1] = (types::material_id_t)(-1);
return t;
}
-template <> Table<3,unsigned char> material_ids<3>()
+template <> Table<3,types::material_id_t> material_ids<3>()
{
- Table<3,unsigned char> t(2,3,4);
+ Table<3,types::material_id_t> t(2,3,4);
for (unsigned int i=0; i<2; ++i)
for (unsigned int j=0; j<3; ++j)
for (unsigned int k=0; k<4; ++k)
t[i][j][k] = 1;
// produce a hole in the middle
- t[1][1][1] = (unsigned char)(-1);
- t[1][1][2] = (unsigned char)(-1);
+ t[1][1][1] = (types::material_id_t)(-1);
+ t[1][1][2] = (types::material_id_t)(-1);
return t;
}
p1[0] = 2.;
if (dim>1) p1[1] = -1.;
if (dim>2) p1[2] = 0.;
-
+
Point<dim> p2;
p2[0] = 3.;
if (dim>1) p2[1] = 2.;
p3[0] = 2.;
if (dim>1) p3[1] = 1.;
if (dim>2) p3[2] = 4.;
-
+
GridOut go;
// uniformly subdivided mesh
deallog.attach(logfile);
deallog.depth_console(0);
deallog.threshold_double(1.e-10);
-
+
deallog.push("1d");
test<1>(logfile);
deallog.pop();
// now extract a mesh of the 5
// surface faces
- std::set<unsigned char> boundary_indicators;
+ std::set<types::boundary_id_t> boundary_indicators;
boundary_indicators.insert (0);
GridTools::extract_boundary_mesh (volume_mesh, boundary_mesh,
boundary_indicators);
tria.set_boundary (1, surface_description);
tria.set_boundary (0, surface_description);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
GridTools::extract_boundary_mesh (volume_mesh, tria,
MappingQ<dim,spacedim> mapping(3);
Quadrature<dim-1> &q_face = get_q_face<dim>();
- std::map<unsigned char,const Function<spacedim>*> neumann_bc;
+ std::map<types::boundary_id_t,const Function<spacedim>*> neumann_bc;
neumann_bc[0] = &function;
Vector<double> v (dof.n_dofs());
save_mesh(volume_mesh);
Triangulation<dim-1,dim> boundary_mesh;
- set<unsigned char> boundary_ids;
+ set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
surface_to_volume_mapping
boundary_mesh.set_boundary (1, surface_description);
boundary_mesh.set_boundary (0, surface_description);
- set<unsigned char> boundary_ids;
+ set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(1);
surface_to_volume_mapping
cell = volume_mesh.begin_active();
cell->face(0)->set_all_boundary_indicators (1);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
GridTools::extract_boundary_mesh (volume_mesh, boundary_mesh, boundary_ids);
}
cell = volume_mesh.begin_active();
cell->face(0)->set_all_boundary_indicators (1);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
GridTools::extract_boundary_mesh (volume_mesh, boundary_mesh, boundary_ids);
}
cell = volume_mesh.begin_active();
cell->face(0)->set_all_boundary_indicators (1);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
GridTools::extract_boundary_mesh (volume_mesh, boundary_mesh, boundary_ids);
}
Triangulation<dim, spacedim> tria;
Triangulation<spacedim> volume_mesh;
GridGenerator::half_hyper_ball(volume_mesh);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
GridTools::extract_boundary_mesh (volume_mesh, tria,boundary_ids);
triangulation.set_boundary (1, surface_description);
triangulation.set_boundary (0, surface_description);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert(0);
GridTools::extract_boundary_mesh (volume_mesh, triangulation,
MappingQ<dim> mapping(3);
Quadrature<dim-1> &q_face = get_q_face(function);
- std::map<unsigned char,const Function<dim>*> neumann_bc;
+ std::map<types::boundary_id_t,const Function<dim>*> neumann_bc;
neumann_bc[0] = &function;
Vector<double> v (dof.n_dofs());
MappingQ<dim,spacedim> mapping(3);
QGauss<dim-1> q_face(4);
- std::map<unsigned char,const Function<spacedim>*> neumann_bc;
+ std::map<types::boundary_id_t,const Function<spacedim>*> neumann_bc;
neumann_bc[0] = &function;
Vector<double> v (dof.n_dofs());
std::vector<bool> fixed_dofs (dof_handler.n_dofs());
- std::set<unsigned char> boundary_indicators;
+ std::set<types::boundary_id_t> boundary_indicators;
boundary_indicators.insert (0);
// get a list of those boundary DoFs which
<< ", case=" << i
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
for (unsigned int j=0; j<=i; ++j)
boundary_ids.insert (j);
<< ", case=" << i
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
for (unsigned int j=0; j<=i; ++j)
boundary_ids.insert (j);
deallog << "FE=" << fe.get_name()
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
ConstraintMatrix cm;
deallog << "FE=" << fe.get_name()
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
ConstraintMatrix cm;
<< ", case=" << i
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
for (unsigned int j=0; j<=i; ++j)
boundary_ids.insert (j);
deallog << "FE=" << fe.get_name()
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (1);
boundary_ids.insert (3);
DoFHandler<dim> dof(tr);
dof.distribute_dofs(fe);
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
ConstraintMatrix cm;
// we used to get this crash:
//
// An error occurred in line <4646> of file </w/heister/deal-trunk/deal.II/include/deal.II/numerics/vectors.templates.h> in function
-// static void dealii::VectorTools::compute_no_normal_flux_constraints(const DH<dim, spacedim>&, unsigned int, const std::set<unsigned char>&, dealii::ConstraintMatrix&, const dealii::Mapping<dim, spacedim>&) [with int dim = 3, DH = dealii::DoFHandler, int spacedim = 3]
+// static void dealii::VectorTools::compute_no_normal_flux_constraints(const DH<dim, spacedim>&, unsigned int, const std::set<types::boundary_id_t>&, dealii::ConstraintMatrix&, const dealii::Mapping<dim, spacedim>&) [with int dim = 3, DH = dealii::DoFHandler, int spacedim = 3]
// The violated condition was:
// std::fabs (tangent.norm()-1) < 1e-12
// The name and call sequence of the exception was:
dofh.distribute_dofs (fe);
- std::set<unsigned char> no_normal_flux_boundaries;
+ std::set<types::boundary_id_t> no_normal_flux_boundaries;
no_normal_flux_boundaries.insert (0);
VectorTools::compute_no_normal_flux_constraints (dofh, 0, no_normal_flux_boundaries, cm, mapping);
dofh.distribute_dofs (fe);
- std::set<unsigned char> no_normal_flux_boundaries;
+ std::set<types::boundary_id_t> no_normal_flux_boundaries;
no_normal_flux_boundaries.insert (1);
// no_normal_flux_boundaries.insert (2); // not required for the crash for now, please test with it later!
no_normal_flux_boundaries.insert (3);
<< ", case=" << i
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
for (unsigned int j=0; j<=i; ++j)
boundary_ids.insert (j);
<< ", case=" << i
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
for (unsigned int j=0; j<=i; ++j)
boundary_ids.insert (j);
deallog << "FE=" << fe[0].get_name()
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
ConstraintMatrix cm;
deallog << "FE=" << fe[0].get_name()
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
boundary_ids.insert (0);
ConstraintMatrix cm;
<< ", case=" << i
<< std::endl;
- std::set<unsigned char> boundary_ids;
+ std::set<types::boundary_id_t> boundary_ids;
for (unsigned int j=0; j<=i; ++j)
boundary_ids.insert (j);
TestFunction<dim> f(degree-1);
std::map<unsigned int, double> boundary_constraints;
typename FunctionMap<dim>::type boundary_map;
- for (unsigned char i=0;i<255;++i)
+ for (types::boundary_id_t i=0;i<255;++i)
boundary_map[i] = &f;
VectorTools::project_boundary_values(mapping, dof, boundary_map, quadrature,
boundary_constraints);
GridGenerator::hyper_cube (tria);
tria.refine_global (2);
- std::vector<unsigned char>
+ std::vector<types::boundary_id_t>
boundary_ids = tria.get_boundary_indicators ();
for (unsigned int i=0; i<boundary_ids.size(); ++i)
tria.begin_active()->face(0)->set_boundary_indicator(2);
tria.begin_active()->face(1)->set_boundary_indicator(4);
- std::vector<unsigned char>
+ std::vector<types::boundary_id_t>
boundary_ids = tria.get_boundary_indicators ();
for (unsigned int i=0; i<boundary_ids.size(); ++i)
// @p{function} to hold on all parts of the
// boundary
typename FunctionMap<dim>::type boundary_functions;
- for (unsigned char c=0; c<255; ++c)
+ for (types::boundary_id_t c=0; c<255; ++c)
boundary_functions[c] = &function;
project_boundary_values (dof, boundary_functions, q_boundary,
boundary_values);
Vector<double> rhs_vector(hp_dof_handler.n_dofs());
Vector<double> rhs_vector2(hp_dof_handler2.n_dofs());
- unsigned char myints[1];
- std::set<unsigned char> boundary_indicators (myints,myints+1);
+ types::boundary_id_t myints[1];
+ std::set<types::boundary_id_t> boundary_indicators (myints,myints+1);
myints[0]=0;
hp::QCollection<1> quadrature;
quadrature.push_back (QGauss<1>(1));
ConstraintMatrix constraints;
constraints.reinit(relevant_set);
DoFTools::make_hanging_node_constraints (dofh, constraints);
- std::set<unsigned char> no_normal_flux_boundaries;
+ std::set<types::boundary_id_t> no_normal_flux_boundaries;
no_normal_flux_boundaries.insert (1);
const unsigned int degree = 1;
VectorTools::compute_no_normal_flux_constraints (dofh, 0,
ConstraintMatrix constraints;
constraints.reinit(relevant_set);
DoFTools::make_hanging_node_constraints (dofh, constraints);
- std::set<unsigned char> no_normal_flux_boundaries;
+ std::set<types::boundary_id_t> no_normal_flux_boundaries;
no_normal_flux_boundaries.insert (1);
const unsigned int degree = 1;
/* VectorTools::compute_no_normal_flux_constraints (dofh, 0,
ConstraintMatrix constraints;
constraints.reinit(relevant_set);
DoFTools::make_hanging_node_constraints (dofh, constraints);
- std::set<unsigned char> no_normal_flux_boundaries;
+ std::set<types::boundary_id_t> no_normal_flux_boundaries;
no_normal_flux_boundaries.insert (0);
const unsigned int degree = 1;
VectorTools::compute_no_normal_flux_constraints (dofh, 0,
cm,
velocity_mask);
- std::set<unsigned char> no_normal_flux_boundaries;
+ std::set<types::boundary_id_t> no_normal_flux_boundaries;
no_normal_flux_boundaries.insert (1);