Dear Michal,
Thanks for reporting this problem - this is indeed a bug. It seems we
did not think carefully about the case with periodic boundary conditions
and hanging nodes. I have opened an issue at deal.II so we can try to
fix it soon: https://github.com/dealii/dealii/issues/8905
Best,
Martin
On 12.10.19 17:29, Michał Wichrowski wrote:
Dear all,
I modified step-59 function run() so that in only makes grid and does
local refinement and initializes MatrixFree object. This triggers an
assertion when calling
mg_mf_storage_level->reinit(dof_handler,
dummy,
QGauss<1>(fe.degree + 1),
additional_data);
in system_setup().
Function run():
Point<dim> upper_right;
upper_right[0] = 2.5;
for (unsigned int d = 1; d < dim; ++d)
upper_right[d] = 2.8;
GridGenerator::hyper_rectangle(triangulation,
Point<dim>(),
upper_right);
triangulation.begin_active()->face(0)->set_boundary_id(10);
triangulation.begin_active()->face(1)->set_boundary_id(11);
triangulation.begin_active()->face(2)->set_boundary_id(0);
for (unsigned int f = 3; f <
GeometryInfo<dim>::faces_per_cell; ++f)
triangulation.begin_active()->face(f)->set_boundary_id(1);
std::vector<GridTools::PeriodicFacePair<
typename Triangulation<dim>::cell_iterator>>
periodic_faces;
GridTools::collect_periodic_faces(
triangulation, 10, 11, 0, periodic_faces);
triangulation.add_periodicity(periodic_faces);
triangulation.refine_global(1);
Vector<float>
estimated_error_per_cell(triangulation.n_active_cells());
for (unsigned int i = 0; i <
estimated_error_per_cell.size(); ++i)
estimated_error_per_cell[i] = std::sin(i) * std::sin(i);
parallel::distributed::GridRefinement::refine_and_coarsen_fixed_number(
triangulation, estimated_error_per_cell, 0.3, 0.0);
triangulation.execute_coarsening_and_refinement();
setup_system();
Error message:
--------------------------------------------------------
An error occurred in line <4993> of file
</home/mwichro/lib/dealii/source/fe/fe_values.cc> in function
void dealii::FESubfaceValues<dim, spacedim>::reinit(const typename
dealii::Triangulation<dim, spacedim>::cell_iterator&, unsigned int,
unsigned int) [with int dim = 3; int spacedim = 3; typename
dealii::Triangulation<dim, spacedim>::cell_iterator =
dealii::TriaIterator<dealii::CellAccessor<3, 3> >]
The violated condition was:
subface_no < cell->face(face_no)->n_children()
Additional information:
Index 0 is not in the half-open range [0,0). In the current case,
this half-open range is in fact empty, suggesting that you are
accessing an element of an empty collection such as a vector that has
not been set to the correct size.
Stacktrace:
-----------
I have no idea what may be causing this.
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google
Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/69586e52-7e99-41e4-a7f1-930cffd6c046%40googlegroups.com
<https://groups.google.com/d/msgid/dealii/69586e52-7e99-41e4-a7f1-930cffd6c046%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/556cf82f-79bf-6b3b-3265-4e84501f78f1%40gmail.com.