endc = dof.end();
for (; cell!=endc; ++cell)
{
- if (cell->level_subdomain_id()!=dof.get_tria().locally_owned_subdomain()
- && dof.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id)
+ if (dof.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id
+ && cell->level_subdomain_id()!=dof.get_tria().locally_owned_subdomain())
continue;
const FiniteElement<dim> &fe = cell->get_fe();
const unsigned int level = cell->level();
cell = dof.begin(),
endc = dof.end();
for (; cell!=endc; ++cell)
- if (cell->level_subdomain_id()==dof.get_tria().locally_owned_subdomain()
- || dof.get_tria().locally_owned_subdomain()==numbers::invalid_subdomain_id)
+ if (dof.get_tria().locally_owned_subdomain()==numbers::invalid_subdomain_id
+ || cell->level_subdomain_id()==dof.get_tria().locally_owned_subdomain())
for (unsigned int face_no = 0; face_no < GeometryInfo<dim>::faces_per_cell;
++face_no)
{
for (; cell!=endc; ++cell)
{
- if (cell->level_subdomain_id()!=mg_dof_handler.get_tria().locally_owned_subdomain()
- && mg_dof_handler.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id)
+ if (mg_dof_handler.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id
+ && cell->level_subdomain_id()!=mg_dof_handler.get_tria().locally_owned_subdomain())
continue;
std::fill (cell_dofs.begin(), cell_dofs.end(), false);
for (; cell!=endc; ++cell)
{
- if (cell->level_subdomain_id()!=mg_dof_handler.get_tria().locally_owned_subdomain()
- && mg_dof_handler.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id)
+ if (mg_dof_handler.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id
+ && cell->level_subdomain_id()!=mg_dof_handler.get_tria().locally_owned_subdomain())
continue;
std::fill (cell_dofs.begin(), cell_dofs.end(), false);
for (; cell!=endc; ++cell)
{
- if (cell->level_subdomain_id()!=mg_dof_handler.get_tria().locally_owned_subdomain()
- && mg_dof_handler.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id)
+ if (mg_dof_handler.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id
+ && cell->level_subdomain_id()!=mg_dof_handler.get_tria().locally_owned_subdomain())
continue;
bool has_coarser_neighbor = false;
std::vector<unsigned int> entries (dofs_per_cell);
for (typename DoFHandler<dim,spacedim>::cell_iterator cell=mg_dof.begin(level);
cell != mg_dof.end(level); ++cell)
- if (cell->has_children() && cell->level_subdomain_id()==mg_dof.get_tria().locally_owned_subdomain())
+ if (cell->has_children() &&
+ ( mg_dof.get_tria().locally_owned_subdomain()==numbers::invalid_subdomain_id
+ || cell->level_subdomain_id()==mg_dof.get_tria().locally_owned_subdomain()
+ ))
{
cell->get_mg_dof_indices (dof_indices_parent);
// now actually build the matrices
for (typename DoFHandler<dim,spacedim>::cell_iterator cell=mg_dof.begin(level);
cell != mg_dof.end(level); ++cell)
- if (cell->has_children() && cell->level_subdomain_id()==mg_dof.get_tria().locally_owned_subdomain())
+ if (cell->has_children() &&
+ (mg_dof.get_tria().locally_owned_subdomain()==numbers::invalid_subdomain_id
+ || cell->level_subdomain_id()==mg_dof.get_tria().locally_owned_subdomain())
+ )
{
cell->get_mg_dof_indices (dof_indices_parent);
// by restricting from fine level.
for (; level_cell!=level_end; ++level_cell)
{
- if (level_cell->level_subdomain_id()!=mg_dof.get_tria().locally_owned_subdomain())
+ if (mg_dof.get_tria().locally_owned_subdomain()!=numbers::invalid_subdomain_id
+ && level_cell->level_subdomain_id()!=mg_dof.get_tria().locally_owned_subdomain())
continue;
// get the dof numbers of