Alberto,

I am bothering today about a code I have been writing in the shared triangulation framework and its transition to the parallel::distributed::Triangulation<dim> framework.

The shared version works just fine, and so does the parallel if run with 1 single process. I understand therefore that the numerics seem to work OK, but since I am having issues with more than one process, likely I am not understanding some fundamentals of the parallel::distributed::Triangulation<dim> framework.


In particular it seems that a call of type


std::vector< Vector< double> > old_solution_values ( quadrature_formula.size(), Vector< double>(dofs.GPDofs) );

fe_values.get_function_values ( locally_accumulated_displacement, old_solution_values );

provides nan, that propagates and make the code to fail.

Are you running in debug or release mode? The former may give you an error already at an earlier time.


I wonder if this fact is due to DoFs that are not locally owned within cells that are indeed owned locally.

That is correct -- not all DoFs on locally owned cells are locally owned DoFs. That's because some DoFs are located on vertices or faces between processor subdomains and they can only be owned by one of the two processors. That's exactly the difference between "locally owned" and "locally active" DoFs -- take a look at the glossary entry on these two terms.

Given the code snippet above, I wonder whether locally_accumulated_displacement is a vector that only has the locally owned dofs, or whether it is a vector that has at least the locally active elements (or maybe also the ghost/locally relevant elements). If you call fe_values.get_function_values() on a locally owned cell, the locally_accumulated_displacement vector needs to have at least the locally active vector elements.

Best
 W.

--
------------------------------------------------------------------------
Wolfgang Bangerth          email:                 [email protected]
                           www: http://www.math.colostate.edu/~bangerth/

--
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.

Reply via email to