Hi all, I came across a very weird problem today. When using p::d::SolutionTransfer during refinement I get the following error during interpolate step at the second refinement cycle:
61: An error occurred in line <686> of file </Users/davydden/spack/var/spack /stage/dealii-develop-7douosfpwd62254laf4et7n6x64b62fh/dealii/include/deal. II/lac/la_parallel_vector.templates.h> in function 61: void dealii::LinearAlgebra::distributed::Vector<double>:: compress_finish(::dealii::VectorOperation::values) 61: The violated condition was: 61: *read_position == Number() || std::abs(local_element(j) - * read_position) <= std::abs(local_element(j)) * 1000. * std::numeric_limits <real_type>::epsilon() 61: Additional information: 61: Called compress(VectorOperation::insert), but the element received from a remote processor, value 2.059635156599626e-06, does not match with the value 2.059635156600494e-06 on the owner processor 2 I am quite certain that SolutionTransfer gets parallel vectors with (i) constraints distributed (ii) ghosted, That is accomplished by constraints.distribute (solution_vectors[i]); solution_vectors[i].update_ghost_values(); and a minor trick (prior to those lines) to change ghost index set when combining matrix-free and Kelly, as discussed here https://groups.google.com/d/msg/dealii/-FMHGdn18fE/w6YotFXRAAAJ Between this point and the usage of solution transfer, there is only Kelly estimator / DataOutput and cell marking involved. The issue appears for a very specific problem and does not happen always. So far it looks like a hidden *Heisenbug*, which gets triggered in certain cases. Not knowing the details of p::d::SolutionTransfer class, I am not quite sure where to dig next. Given the fact that ghost values should be consistent among MPI processes, I don't see a way how the interpolation during solution transfer could lead to such discrepancies. Regards, Denis -- 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]. For more options, visit https://groups.google.com/d/optout.
