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.