Skip to content

goal_oriented_elastoplasticity adds differently partitioned vectors #227

@marcfehling

Description

@marcfehling

Part of #219.

It appears that we are adding two incompatible Trilinos MPI Vectors here.

tmp_solution += incremental_displacement;

This triggers an assertion about different parallel partitioning.
https://github.com/dealii/dealii/blob/c90bfbff25f32d0643c74143588a73819c80f8e0/include/deal.II/lac/trilinos_vector.h#L2028-L2029


$ mpirun -np 2 xterm -e gdb --args ./elastoplastic Cantiliver_II_beam_3d.prm 
(gdb) run
Using output directory 'Results/DWR_VM_1/'
    FE degree 1
    transfer solution true
    Number of active cells:       1820

Time step 1 at time 1
    Number of degrees of freedom: 11232
   Number of active cells: 1820
   Number of degrees of freedom: 11232
 
   Newton iteration 1
      Assembling system... 

--------------------------------------------------------
An error occurred in line <2028> of file <dealii/include/deal.II/lac/trilinos_vector.h> in function
    dealii::TrilinosWrappers::MPI::Vector& dealii::TrilinosWrappers::MPI::Vector::operator+=(const dealii::TrilinosWrappers::MPI::Vector&)
The violated condition was: 
    vector->Map().SameAs(v.vector->Map())
Additional information: 
    (none)

Stacktrace:
-----------
#0  ./elastoplastic: dealii::TrilinosWrappers::MPI::Vector::operator+=(dealii::TrilinosWrappers::MPI::Vector const&)
#1  ./elastoplastic: ElastoPlastic::ElastoPlasticProblem<3>::solve_newton()
#2  ./elastoplastic: ElastoPlastic::ElastoPlasticProblem<3>::run()
#3  ./elastoplastic: 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

Thread 1 "elastoplastic" hit Breakpoint 1, 0x00007fffa6690c38 in PMPI_Abort () from /usr/lib/libmpi.so.40

(gdb) bt
#0  0x00007fffa6690c38 in PMPI_Abort () from /usr/lib/libmpi.so.40
#1  0x00007ffff36fec29 in dealii::deal_II_exceptions::internals::abort (exc=...) at dealii/source/base/exceptions.cc:519
#2  0x00005555557a3b5b in dealii::deal_II_exceptions::internals::issue_error_noreturn<dealii::TrilinosWrappers::MPI::Vector::ExcDifferentParallelPartitioning> (handling=dealii::deal_II_exceptions::internals::ExceptionHandling::abort_or_throw_on_exception, file=0x555555749ee0 "dealii/include/deal.II/lac/trilinos_vector.h", line=2028, function=0x55555574a770 "dealii::TrilinosWrappers::MPI::Vector& dealii::TrilinosWrappers::MPI::Vector::operator+=(const dealii::TrilinosWrappers::MPI::Vector&)", cond=0x55555574a7f8 "vector->Map().SameAs(v.vector->Map())", exc_name=0x55555574a4e0 "ExcDifferentParallelPartitioning()", e=...) at dealii/include/deal.II/base/exceptions.h:1063
#3  0x0000555555791efc in dealii::TrilinosWrappers::MPI::Vector::operator+= (this=0x7fffffffac50, v=...) at dealii/include/deal.II/lac/trilinos_vector.h:2028
#4  0x00005555557bd1a6 in ElastoPlastic::ElastoPlasticProblem<3>::solve_newton (this=0x7fffffffb160) at code-gallery/goal_oriented_elastoplasticity/elastoplastic.cc:4769
#5  0x00005555557abe6f in ElastoPlastic::ElastoPlasticProblem<3>::run (this=0x7fffffffb160) at code-gallery/goal_oriented_elastoplasticity/elastoplastic.cc:7181
#6  0x0000555555782f50 in main (argc=2, argv=0x7fffffffd5e8) at code-gallery/goal_oriented_elastoplasticity/elastoplastic.cc:7295

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions