Issue encountered while solving Step-40 in 1 dimension

37 views
Skip to first unread message

syed ansari

unread,
Aug 19, 2022, 7:07:37 AM8/19/22
to dea...@googlegroups.com
Dear all,
            I was trying to run step-40 in 1 dimension and encountered the error corresponding to MeshSmoothing in the constructor. The details of the error are as follows:
--------------------------------------------------------
An error occurred in line <3455> of file </home/syed/dealii-candi/tmp/unpack/deal.II-v9.3.2/source/distributed/tria.cc> in function
    dealii::parallel::distributed::Triangulation<1, spacedim>::Triangulation(ompi_communicator_t* const&, typename dealii::Triangulation<1, spacedim>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, spacedim>::Settings) [with int spacedim = 1; MPI_Comm = ompi_communicator_t*; typename dealii::Triangulation<1, spacedim>::MeshSmoothing = dealii::Triangulation<1, 1>::MeshSmoothing]
The violated condition was:
    false
Additional information:
    You are trying to use functionality in deal.II that is currently not
    implemented. In many cases, this indicates that there simply didn't
    appear much of a need for it, or that the author of the original code
    did not have the time to implement a particular case. If you hit this
    exception, it is therefore worth the time to look into the code to
    find out whether you may be able to implement the missing
    functionality. If you do, please consider providing a patch to the
    deal.II development sources (see the deal.II website on how to
    contribute).

Stacktrace:
-----------
#0  /home/syed/dealii-candi/deal.II-v9.3.2/lib/libdeal_II.g.so.9.3.2: dealii::parallel::distributed::Triangulation<1, 1>::Triangulation(ompi_communicator_t* const&, dealii::Triangulation<1, 1>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, 1>::Settings)
#1  ./step-40: Step40::LaplaceProblem<1>::LaplaceProblem()
#2  ./step-40: 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

--------------------------------------------------------
An error occurred in line <3455> of file </home/syed/dealii-candi/tmp/unpack/deal.II-v9.3.2/source/distributed/tria.cc> in function
    dealii::parallel::distributed::Triangulation<1, spacedim>::Triangulation(ompi_communicator_t* const&, typename dealii::Triangulation<1, spacedim>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, spacedim>::Settings) [with int spacedim = 1; MPI_Comm = ompi_communicator_t*; typename dealii::Triangulation<1, spacedim>::MeshSmoothing = dealii::Triangulation<1, 1>::MeshSmoothing]
The violated condition was:
    false
Additional information:
    You are trying to use functionality in deal.II that is currently not
    implemented. In many cases, this indicates that there simply didn't
    appear much of a need for it, or that the author of the original code
    did not have the time to implement a particular case. If you hit this
    exception, it is therefore worth the time to look into the code to
    find out whether you may be able to implement the missing
    functionality. If you do, please consider providing a patch to the
    deal.II development sources (see the deal.II website on how to
    contribute).

Stacktrace:
-----------
#0  /home/syed/dealii-candi/deal.II-v9.3.2/lib/libdeal_II.g.so.9.3.2: dealii::parallel::distributed::Triangulation<1, 1>::Triangulation(ompi_communicator_t* const&, dealii::Triangulation<1, 1>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, 1>::Settings)
#1  ./step-40: Step40::LaplaceProblem<1>::LaplaceProblem()
#2  ./step-40: 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

--------------------------------------------------------
An error occurred in line <3455> of file </home/syed/dealii-candi/tmp/unpack/deal.II-v9.3.2/source/distributed/tria.cc> in function
    dealii::parallel::distributed::Triangulation<1, spacedim>::Triangulation(ompi_communicator_t* const&, typename dealii::Triangulation<1, spacedim>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, spacedim>::Settings) [with int spacedim = 1; MPI_Comm = ompi_communicator_t*; typename dealii::Triangulation<1, spacedim>::MeshSmoothing = dealii::Triangulation<1, 1>::MeshSmoothing]
The violated condition was:
    false
Additional information:
    You are trying to use functionality in deal.II that is currently not
    implemented. In many cases, this indicates that there simply didn't
    appear much of a need for it, or that the author of the original code
    did not have the time to implement a particular case. If you hit this
    exception, it is therefore worth the time to look into the code to
    find out whether you may be able to implement the missing
    functionality. If you do, please consider providing a patch to the
    deal.II development sources (see the deal.II website on how to
    contribute).

Stacktrace:
-----------
#0  /home/syed/dealii-candi/deal.II-v9.3.2/lib/libdeal_II.g.so.9.3.2: dealii::parallel::distributed::Triangulation<1, 1>::Triangulation(ompi_communicator_t* const&, dealii::Triangulation<1, 1>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, 1>::Settings)
#1  ./step-40: Step40::LaplaceProblem<1>::LaplaceProblem()
#2  ./step-40: 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

--------------------------------------------------------
An error occurred in line <3455> of file </home/syed/dealii-candi/tmp/unpack/deal.II-v9.3.2/source/distributed/tria.cc> in function
    dealii::parallel::distributed::Triangulation<1, spacedim>::Triangulation(ompi_communicator_t* const&, typename dealii::Triangulation<1, spacedim>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, spacedim>::Settings) [with int spacedim = 1; MPI_Comm = ompi_communicator_t*; typename dealii::Triangulation<1, spacedim>::MeshSmoothing = dealii::Triangulation<1, 1>::MeshSmoothing]
The violated condition was:
    false
Additional information:
    You are trying to use functionality in deal.II that is currently not
    implemented. In many cases, this indicates that there simply didn't
    appear much of a need for it, or that the author of the original code
    did not have the time to implement a particular case. If you hit this
    exception, it is therefore worth the time to look into the code to
    find out whether you may be able to implement the missing
    functionality. If you do, please consider providing a patch to the
    deal.II development sources (see the deal.II website on how to
    contribute).

Stacktrace:
-----------
#0  /home/syed/dealii-candi/deal.II-v9.3.2/lib/libdeal_II.g.so.9.3.2: dealii::parallel::distributed::Triangulation<1, 1>::Triangulation(ompi_communicator_t* const&, dealii::Triangulation<1, 1>::MeshSmoothing, dealii::parallel::distributed::Triangulation<1, 1>::Settings)
#1  ./step-40: Step40::LaplaceProblem<1>::LaplaceProblem()
#2  ./step-40: 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 3 in communicator MPI_COMM_WORLD
with errorcode 255.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
[syed-HP-Pavilion-Laptop-15-eg0xxx:35613] 3 more processes have sent help message help-mpi-api.txt / mpi-abort
[syed-HP-Pavilion-Laptop-15-eg0xxx:35613] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
--------------------------------------------------------------------------

It seems to me that the MeshSmoothing was not implemented in 1 dimension. Is it possible to skip this step and still run Step-40 in 1 dimension? Please help me to overcome this issue. Thanks in advance.

Best Regards,
Syed Ansari S.

Daniel Arndt

unread,
Aug 19, 2022, 10:48:24 AM8/19/22
to dea...@googlegroups.com
Syed,

parallel::distributed::Triangulation is just not implemented for dim==1 so you can't run step-40 for the one-dimensional case.

Best,
Daniel

--
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 dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/CANaEQuYrXL7wP%2BMRzfTK62asU%2B00ZDK0KiA7QjPBxRLh0g_Dww%40mail.gmail.com.

syed ansari

unread,
Aug 20, 2022, 5:25:44 AM8/20/22
to dea...@googlegroups.com
Thanks Daniel for your quick reply. Is it possible to solve the same problem with parallel::shared::Triangulation for dim ==1?

Daniel Arndt

unread,
Aug 22, 2022, 9:58:22 AM8/22/22
to dea...@googlegroups.com
Syed,

Yes, you should be able to use parallel::shared::Triangulation instead.

Best,
Daniel

syed ansari

unread,
Aug 23, 2022, 2:25:29 AM8/23/22
to dea...@googlegroups.com
Thanks, Daniel. This is very helpful.

Best Regards,
Syed Ansari S.
Reply all
Reply to author
Forward
0 new messages