Dear deal.II community,
While parallelizing an in-house phase-field fracture code with spatial adaptivity using the p::d::triangulation we observed different meshes using the spatial adaptivity for the serial and the distributed triangulation.
We mark cells for refinement if at least one scalar value falls below a given threshold within a cell.
To see where this might come from, we counted the number of cells before and after the call of triangulation.prepare_coarsening_and_refinement() in the serial and distributed case.
The number of user-defined cells to be refined is the same (number of cells before calling triangulation.prepare_coarsening_and_refinement()). However, after this call, the number differs and therefore different meshes are observed.
Ideally, we would expect that there is no difference for the same problem (same mesh, same parameters, etc.).
We are using dealii 9.0.1 and do not set any smoothing operation in the constructor of the serial and the parallel meshes.
Is such a behavior expected, or is it difficult to compare the result for the serial and the distributed triangulation one by one?
Attached is also the resulting mesh (left parallel, right serial) as well as the phase-field value at a node before refinement (just to make sure that the problems are the same for the serial and distributed version).
Thanks for your help in advance.
Best regards,
Maurice Rohracker