VectorTools::project (dof_handler, hanging_node_constraints,
QGauss<dim>(fe.degree+1),
InitialValues<dim>(),
local_solution);
When initializing the variable fe (as FESystem<dim>) with one or two components, it works fine. For more than two components I get the error
--------------------------------------------------------
An error occurred in line <1366> of file <~/Downloads/dealii/include/deal.II/numerics/vector_tools.templates.h> in function
void dealii::VectorTools::{anonymous}::project(const dealii::Mapping<dim>&, const dealii::DoFHandler<dim>&, const dealii::ConstraintMatrix&, const dealii::Quadrature<dim>&, const dealii::Function<dim, typename VectorType::value_type>&, VectorType&, bool, const dealii
::Quadrature<(dim - 1)>&, bool) [with VectorType = dealii::TrilinosWrappers::MPI::Vector; int dim = 2; typename VectorType::value_type = double]
The violated condition was:
(dynamic_cast<const parallel::Triangulation<dim>* > (&(dof.get_triangulation()))==nullptr)
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 contri
bute).
Stacktrace:
-----------
#0 /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre:
#1 /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre: void dealii::VectorTools::project<2, dealii::TrilinosWrappers::MPI::Vector, 2>(dealii::DoFHandler<2, 2> const&, dealii::ConstraintMatrix const&, dealii::Quadrature<2> const&, dealii::Function<2, dealii::TrilinosWrappers::MPI
::Vector::value_type> const&, dealii::TrilinosWrappers::MPI::Vector&, bool, dealii::Quadrature<(2)-(1)> const&, bool)
#2 ./main: Step15::MinimalSurfaceProblem<2>::run()
#3 ./main: main
--------------------------------------------------------
[linux-lb8c:15830] *** Process received signal ***
[linux-lb8c:15830] Signal: Aborted (6)
[linux-lb8c:15830] Signal code: (-6)
[linux-lb8c:15830] [ 0] /lib64/libpthread.so.0(+0x12270)[0x7f294a477270]
[linux-lb8c:15830] [ 1] /lib64/libc.so.6(gsignal+0x110)[0x7f2946c1f0d0]
[linux-lb8c:15830] [ 2] /lib64/libc.so.6(abort+0x151)[0x7f2946c206b1]
[linux-lb8c:15830] [ 3] /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre(+0x6b9e5d1)[0x7f295b49e5d1]
[linux-lb8c:15830] [ 4] /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre(_ZN6dealii18deal_II_exceptions9internals5abortERKNS_13ExceptionBaseE+0x1a)[0x7f295b49edaf]
[linux-lb8c:15830] [ 5] /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre(_ZN6dealii18deal_II_exceptions9internals11issue_errorINS_18StandardExceptions17ExcNotImplementedEEEvNS1_17ExceptionHandlingEPKciS7_S7_S7_T_+0x98)[0x7f2957373ea1]
[linux-lb8c:15830] [ 6] /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre(+0x3f38e23)[0x7f2958838e23]
[linux-lb8c:15830] [ 7] /opt/dealII/lib/libdeal_II.g.so.9.0.0-pre(_ZN6dealii11VectorTools7projectILi2ENS_16TrilinosWrappers3MPI6VectorELi2EEEvRKNS_10DoFHandlerIXT_EXT1_EEERKNS_16ConstraintMatrixERKNS_10QuadratureIXT_EEERKNS_8FunctionIXT1_ENT0_10value_typeEEERSH_bRKNSC_IX
miT_Li1EEEEb+0x2f)[0x7f295894906e]
[linux-lb8c:15830] [ 8] ./main(_ZN6Step1521MinimalSurfaceProblemILi2EE3runEv+0xc08)[0x420d08]
[linux-lb8c:15830] [ 9] ./main(main+0x3c)[0x414ad0]
[linux-lb8c:15830] [10] /lib64/libc.so.6(__libc_start_main+0xea)[0x7f2946c09f4a]
[linux-lb8c:15830] [11] ./main(_start+0x2a)[0x41477a]
[linux-lb8c:15830] *** End of error message ***
Abgebrochen (Speicherabzug geschrieben)
when running in debug mode. It runs fine in release mode. Why does that happen for more than two components, and how can I fix/circumvent that? Or did I (again) forget something?
My minimal example is attached, the behaviour happens when setting NUM_COMPONENTS via
#define NUM_COMPONENTS 100
to a value larger than 2.
Thank you!