else if (cell->neighbor_is_coarser (face_no))
{
std::cout << "\nPoint of Failure\n";
std::cout << face_no
<<std::endl
<< cell->center()(0)
<< " " << cell->center()(1);
const std::pair <unsigned int, unsigned int> neighbor_face = cell->neighbor_of_coarser_neighbor (1);
}
Point of Failure
1
0.375 0.125
--------------------------------------------------------
An error occurred in line <1543> of file </usr/local/src/deal-branches/rev-8.1/source/grid/tria_accessor.cc> in function
std::pair<unsigned int, unsigned int> dealii::CellAccessor<2, 2>::neighbor_of_coarser_neighbor(const unsigned int) const [dim = 2, spacedim = 2]
The violated condition was:
(neighbor) < (GeometryInfo<dim>::faces_per_cell)
The name and call sequence of the exception was:
ExcIndexRange((neighbor),0,(GeometryInfo<dim>::faces_per_cell))
Additional Information:
Index 1923559720 is not in [0,4[
const std::pair <unsigned int, unsigned int> neighbor_face = cell->neighbor_of_coarser_neighbor (face_no);
This is what my grid looks like. The code always fails when 'cell' is pointing to the block marked with a star and face_no = 1 which means that the edge marked red is the interface in question. I am trying to extract the face and subface number of this interface w.r.t the larger cell on the bottom right.