Now it fails at the line
evaluation_point.add (alpha, newton_update);
with the comment
--------------------------------------------------------
An error occurred in line <1927> of file
</opt/dealII/include/deal.II/lac/trilinos_vector.h> in function
void dealii::TrilinosWrappers::MPI::Vector::add(dealii::TrilinosScalar,
const dealii::TrilinosWrappers::MPI::Vector&)
The violated condition was:
!has_ghost_elements()
Additional information:
You are trying an operation on a vector that is only allowed if the vector
has no ghost elements, but the vector you are operating on does have ghost
elements. Specifically, vectors with ghost elements are read-only and cannot
appear in operations that write into the
se vectors.
See the glossary entry on 'Ghosted vectors' for more information.
Stacktrace:
-----------
#0 main: dealii::TrilinosWrappers::MPI::Vector::add(double,
dealii::TrilinosWrappers::MPI::Vector const&)
#1 main: Step15::MinimalSurfaceProblem<2>::compute_residual(double)
#2 main: Step15::MinimalSurfaceProblem<2>::run()
#3 main: main
--------------------------------------------------------
Calling MPI_Abort now.
To break execution in a GDB session, execute 'break MPI_Abort' before running.
You can also put the following into your ~/.gdbinit:
set breakpoint pending on
break MPI_Abort
set breakpoint pending auto
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 1 in communicator MPI_COMM_WORLD
with errorcode 255.
Looks as if I have to check both vectors for ghost elements before...
Thanks!
Am Freitag, 8. September 2017 14:48:34 UTC+2 schrieb Bruno Turcksin:
>
> 2017-09-08 8:35 GMT-04:00 'Maxi Miller' via deal.II User Group
> <[email protected] <javascript:>>:
> > Nevertheless, it did not fix the problem...
> This won't fix any thing. I am just surprise that your code goes as
> far as the l2_norm(), I think that it should crash earlier. What
> happens if you comment these line
>
> for (unsigned int i=0; i<dof_handler.n_locally_owned_dofs(); ++i)
> if (boundary_dofs[i] == true)
> residual(i) = 0;
> residual.compress(VectorOperation::insert);//Have to call it after
> setting the boundary elements
>
>
> Best,
>
> Bruno
>
--
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.