Apologies for the last email ... Thanks W. for your quick reply.
I used static because it was used in one of the dealii steps. As there is no need for it, in the following it is removed. I must admit that I am a bit lost here. However, I tried your suggestion and used: FunctionMap<dim,PetscScalar>::type, what gave the errors that I attach in errors.txt. By looking at those errors, I also tried: std::map<types::global_dof_index, const dealii::Function<dim, std::complex<double> > > bval; but it seems that this is not the root of the problem (I also attach these errors at the end of the same file). Any ideas? Thanks in advance. El viernes, 1 de diciembre de 2017, 15:06:29 (UTC-5), Bruno Turcksin escribió: > > > On Friday, December 1, 2017 at 1:47:44 PM UTC-5, Juan Carlos Araujo > Cabarcas wrote: > >> I must admit that I am a bit lost here. However, I tried your suggestion >> and used: FunctionMap<dim,PetscScalar>::type, what gave the errors that >> I attach in errors.txt. >> >> You have attached a file but it only contains an e-mail address. > > 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 dealii+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
****** Errors using: FunctionMap<dim,PetscScalar>::type jc/adapt/petsc_eigs/pFEM.cc: In instantiation of ‘void Adaptive::LaplaceProblem<dim>::assemble_system() [with int dim = 2]’: jc/adapt/petsc_eigs/pFEM.cc:562:26: required from ‘void Adaptive::LaplaceProblem<dim>::run() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:595:28: required from here jc/adapt/petsc_eigs/pFEM.cc:368:72: error: could not convert ‘{{0u, (& homogeneous_dirichlet_bc)}}’ from ‘<brace-enclosed initializer list>’ to ‘const type {aka const std::map<unsigned int, const dealii::Function<2, std::complex<double> >*, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> >*> > >}’ = { { types::boundary_id(0), &homogeneous_dirichlet_bc } }; ^ In file included from dealii/include/deal.II/base/point.h:21:0, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/lac/constraint_matrix.h: In instantiation of ‘void dealii::ConstraintMatrix::distribute_local_to_global(const InVector&, const std::vector<unsigned int>&, OutVector&) const [with InVector = dealii::FullMatrix<double>; OutVector = dealii::PETScWrappers::SparseMatrix]’: jc/adapt/petsc_eigs/pFEM.cc:352:50: required from ‘void Adaptive::LaplaceProblem<dim>::assemble_system() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:562:26: required from ‘void Adaptive::LaplaceProblem<dim>::run() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:595:28: required from here dealii/include/deal.II/lac/constraint_matrix.h:1761:31: error: no match for ‘operator==’ (operand types are ‘const dealii::TableIndices<2>’ and ‘std::vector<unsigned int>::size_type {aka long unsigned int}’) Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ dealii/include/deal.II/lac/constraint_matrix.h:1761:31: note: candidates are: Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ In file included from dealii/include/deal.II/base/tensor.h:22:0, from dealii/include/deal.II/base/point.h:22, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/base/table_indices.h:370:1: note: bool dealii::TableIndices<N>::operator==(const dealii::TableIndices<N>&) const [with int N = 2] TableIndices<N>::operator == (const TableIndices<N> &other) const ^ dealii/include/deal.II/base/table_indices.h:370:1: note: no known conversion for argument 1 from ‘std::vector<unsigned int>::size_type {aka long unsigned int}’ to ‘const dealii::TableIndices<2>&’ In file included from dealii/include/deal.II/fe/mapping_q_generic.h:24:0, from dealii/include/deal.II/fe/mapping_q1.h:21, from dealii/include/deal.II/hp/mapping_collection.h:21, from dealii/include/deal.II/numerics/vector_tools.h:27, from jc/adapt/petsc_eigs/pFEM.cc:61: dealii/include/deal.II/base/vectorization.h:2719:1: note: template<class Number> bool dealii::operator==(const dealii::VectorizedArray<Number>&, const dealii::VectorizedArray<Number>&) operator == (const VectorizedArray<Number> &lhs, ^ dealii/include/deal.II/base/vectorization.h:2719:1: note: template argument deduction/substitution failed: In file included from dealii/include/deal.II/base/point.h:21:0, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/lac/constraint_matrix.h:1761:31: note: ‘const dealii::TableIndices<2>’ is not derived from ‘const dealii::VectorizedArray<Number>’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ In file included from dealii/include/deal.II/base/table.h:24:0, from dealii/include/deal.II/lac/full_matrix.h:22, from jc/adapt/petsc_eigs/pFEM.cc:36: dealii/include/deal.II/base/aligned_vector.h:1114:6: note: template<class T> bool dealii::operator==(const dealii::AlignedVector<T>&, const dealii::AlignedVector<T>&) bool operator == (const AlignedVector<T> &lhs, ^ dealii/include/deal.II/base/aligned_vector.h:1114:6: note: template argument deduction/substitution failed: In file included from dealii/include/deal.II/base/point.h:21:0, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/lac/constraint_matrix.h:1761:31: note: ‘const dealii::TableIndices<2>’ is not derived from ‘const dealii::AlignedVector<T>’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ dealii/include/deal.II/base/exceptions.h:342:76: error: no matching function for call to ‘dealii::StandardExceptions::ExcDimensionMismatch::ExcDimensionMismatch(const dealii::TableIndices<2>&, std::vector<unsigned int>::size_type)’ __FILE__, __LINE__, __PRETTY_FUNCTION__, #cond, #exc, exc); \ ^ dealii/include/deal.II/lac/constraint_matrix.h:1761:3: note: in expansion of macro ‘Assert’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:342:76: note: candidates are: __FILE__, __LINE__, __PRETTY_FUNCTION__, #cond, #exc, exc); \ ^ dealii/include/deal.II/lac/constraint_matrix.h:1761:3: note: in expansion of macro ‘Assert’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:932:19: note: dealii::StandardExceptions::ExcDimensionMismatch::ExcDimensionMismatch(std::size_t, std::size_t) DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:478:5: note: in definition of macro ‘DeclException2’ Exception2 (const type1 a1, const type2 a2) : \ ^ dealii/include/deal.II/base/exceptions.h:932:19: note: no known conversion for argument 1 from ‘const dealii::TableIndices<2>’ to ‘std::size_t {aka long unsigned int}’ DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:478:5: note: in definition of macro ‘DeclException2’ Exception2 (const type1 a1, const type2 a2) : \ ^ dealii/include/deal.II/base/exceptions.h:932:19: note: dealii::StandardExceptions::ExcDimensionMismatch::ExcDimensionMismatch(const dealii::StandardExceptions::ExcDimensionMismatch&) DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:476:9: note: in definition of macro ‘DeclException2’ class Exception2 : public dealii::ExceptionBase { \ ^ dealii/include/deal.II/base/exceptions.h:932:19: note: candidate expects 1 argument, 2 provided DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:476:9: note: in definition of macro ‘DeclException2’ class Exception2 : public dealii::ExceptionBase { \ ^ make[2]: *** [CMakeFiles/pFEM.dir/pFEM.cc.o] Error 1 make[1]: *** [CMakeFiles/pFEM.dir/all] Error 2 ******* Errors using: std::map<types::global_dof_index, const dealii::Function<dim, std::complex<double> > > bval; jc/adapt/petsc_eigs/pFEM.cc: In instantiation of ‘void Adaptive::LaplaceProblem<dim>::assemble_system() [with int dim = 2]’: jc/adapt/petsc_eigs/pFEM.cc:562:26: required from ‘void Adaptive::LaplaceProblem<dim>::run() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:595:28: required from here jc/adapt/petsc_eigs/pFEM.cc:368:72: error: could not convert ‘{{0u, (& homogeneous_dirichlet_bc)}}’ from ‘<brace-enclosed initializer list>’ to ‘const type {aka const std::map<unsigned int, const dealii::Function<2, std::complex<double> >*, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> >*> > >}’ = { { types::boundary_id(0), &homogeneous_dirichlet_bc } }; ^ jc/adapt/petsc_eigs/pFEM.cc:373:51: error: no matching function for call to ‘interpolate_boundary_values(dealii::hp::MappingCollection<2, 2>&, dealii::hp::DoFHandler<2, 2>&, const type&, std::map<unsigned int, const dealii::Function<2, std::complex<double> >, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > > >&)’ bval); ^ jc/adapt/petsc_eigs/pFEM.cc:373:51: note: candidates are: In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:993:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const dealii::Mapping<dim, spacedim>&, const DoFHandlerType<dim, spacedim>&, const std::map<unsigned int, const dealii::Function<spacedim, number>*>&, std::map<unsigned int, number>&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:993:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: ‘dealii::hp::MappingCollection<2, 2>’ is not derived from ‘const dealii::Mapping<dim, spacedim>’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1006:3: note: template<int dim, int spacedim, class number> void dealii::VectorTools::interpolate_boundary_values(const dealii::hp::MappingCollection<dim, spacedim>&, const dealii::hp::DoFHandler<dim, spacedim>&, const std::map<unsigned int, const dealii::Function<spacedim, number>*>&, std::map<unsigned int, number>&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1006:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: deduced conflicting types for parameter ‘number’ (‘std::complex<double>’ and ‘const dealii::Function<2, std::complex<double> >’) bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1025:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const dealii::Mapping<dim, spacedim>&, const DoFHandlerType<dim, spacedim>&, dealii::types::boundary_id, const dealii::Function<spacedim, number>&, std::map<unsigned int, number>&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1025:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: ‘dealii::hp::MappingCollection<2, 2>’ is not derived from ‘const dealii::Mapping<dim, spacedim>’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1045:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const DoFHandlerType<dim, spacedim>&, dealii::types::boundary_id, const dealii::Function<spacedim, number>&, std::map<unsigned int, number>&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1045:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: cannot convert ‘((Adaptive::LaplaceProblem<2>*)this)->Adaptive::LaplaceProblem<2>::dof_handler’ (type ‘dealii::hp::DoFHandler<2, 2>’) to type ‘dealii::types::boundary_id {aka unsigned int}’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1062:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const DoFHandlerType<dim, spacedim>&, const std::map<unsigned int, const dealii::Function<spacedim, number>*>&, std::map<unsigned int, number>&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1062:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: ‘dealii::hp::DoFHandler<2, 2>’ is not derived from ‘const std::map<unsigned int, const dealii::Function<spacedim, number>*>’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1133:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const dealii::Mapping<dim, spacedim>&, const DoFHandlerType<dim, spacedim>&, const std::map<unsigned int, const dealii::Function<spacedim, number>*>&, dealii::ConstraintMatrix&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1133:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: ‘dealii::hp::MappingCollection<2, 2>’ is not derived from ‘const dealii::Mapping<dim, spacedim>’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1154:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const dealii::Mapping<dim, spacedim>&, const DoFHandlerType<dim, spacedim>&, dealii::types::boundary_id, const dealii::Function<spacedim, number>&, dealii::ConstraintMatrix&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1154:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: ‘dealii::hp::MappingCollection<2, 2>’ is not derived from ‘const dealii::Mapping<dim, spacedim>’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1176:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const DoFHandlerType<dim, spacedim>&, dealii::types::boundary_id, const dealii::Function<spacedim, number>&, dealii::ConstraintMatrix&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1176:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: cannot convert ‘((Adaptive::LaplaceProblem<2>*)this)->Adaptive::LaplaceProblem<2>::dof_handler’ (type ‘dealii::hp::DoFHandler<2, 2>’) to type ‘dealii::types::boundary_id {aka unsigned int}’ bval); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:61:0: dealii/include/deal.II/numerics/vector_tools.h:1195:3: note: template<int dim, int spacedim, template<int <anonymous>, int <anonymous> > class DoFHandlerType, class number> void dealii::VectorTools::interpolate_boundary_values(const DoFHandlerType<dim, spacedim>&, const std::map<unsigned int, const dealii::Function<spacedim, number>*>&, dealii::ConstraintMatrix&, const dealii::ComponentMask&) interpolate_boundary_values ^ dealii/include/deal.II/numerics/vector_tools.h:1195:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:373:51: note: ‘dealii::hp::DoFHandler<2, 2>’ is not derived from ‘const std::map<unsigned int, const dealii::Function<spacedim, number>*>’ bval); ^ jc/adapt/petsc_eigs/pFEM.cc:388:27: error: no matching function for call to ‘apply_boundary_values(std::map<unsigned int, const dealii::Function<2, std::complex<double> >, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > > >&, dealii::PETScWrappers::SparseMatrix&, __gnu_cxx::__alloc_traits<std::allocator<dealii::PETScWrappers::MPI::Vector> >::value_type&, dealii::PETScWrappers::MPI::Vector&)’ nullv); ^ jc/adapt/petsc_eigs/pFEM.cc:388:27: note: candidates are: In file included from jc/adapt/petsc_eigs/pFEM.cc:62:0: dealii/include/deal.II/numerics/matrix_tools.h:775:3: note: template<class number> void dealii::MatrixTools::apply_boundary_values(const std::map<unsigned int, number>&, dealii::SparseMatrix<number>&, dealii::Vector<OtherNumber>&, dealii::Vector<OtherNumber>&, bool) apply_boundary_values (const std::map<types::global_dof_index,number> &boundary_values, ^ dealii/include/deal.II/numerics/matrix_tools.h:775:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:388:27: note: ‘dealii::PETScWrappers::SparseMatrix’ is not derived from ‘dealii::SparseMatrix<number>’ nullv); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:62:0: dealii/include/deal.II/numerics/matrix_tools.h:788:3: note: template<class number> void dealii::MatrixTools::apply_boundary_values(const std::map<unsigned int, number>&, dealii::BlockSparseMatrix<number>&, dealii::BlockVector<Number>&, dealii::BlockVector<Number>&, bool) apply_boundary_values (const std::map<types::global_dof_index,number> &boundary_values, ^ dealii/include/deal.II/numerics/matrix_tools.h:788:3: note: template argument deduction/substitution failed: jc/adapt/petsc_eigs/pFEM.cc:388:27: note: ‘dealii::PETScWrappers::SparseMatrix’ is not derived from ‘dealii::BlockSparseMatrix<number>’ nullv); ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:62:0: dealii/include/deal.II/numerics/matrix_tools.h:831:3: note: void dealii::MatrixTools::apply_boundary_values(const std::map<unsigned int, std::complex<double> >&, dealii::PETScWrappers::MatrixBase&, dealii::PETScWrappers::VectorBase&, dealii::PETScWrappers::VectorBase&, bool) apply_boundary_values ^ dealii/include/deal.II/numerics/matrix_tools.h:831:3: note: no known conversion for argument 1 from ‘std::map<unsigned int, const dealii::Function<2, std::complex<double> >, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > > >’ to ‘const std::map<unsigned int, std::complex<double> >&’ dealii/include/deal.II/numerics/matrix_tools.h:842:3: note: void dealii::MatrixTools::apply_boundary_values(const std::map<unsigned int, std::complex<double> >&, dealii::PETScWrappers::MPI::BlockSparseMatrix&, dealii::PETScWrappers::MPI::BlockVector&, dealii::PETScWrappers::MPI::BlockVector&, bool) apply_boundary_values (const std::map<types::global_dof_index,PetscScalar> &boundary_values, ^ dealii/include/deal.II/numerics/matrix_tools.h:842:3: note: no known conversion for argument 1 from ‘std::map<unsigned int, const dealii::Function<2, std::complex<double> >, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > > >’ to ‘const std::map<unsigned int, std::complex<double> >&’ dealii/include/deal.II/numerics/matrix_tools.h:885:3: note: void dealii::MatrixTools::apply_boundary_values(const std::map<unsigned int, double>&, dealii::TrilinosWrappers::SparseMatrix&, dealii::TrilinosWrappers::MPI::Vector&, dealii::TrilinosWrappers::MPI::Vector&, bool) apply_boundary_values (const std::map<types::global_dof_index,TrilinosScalar> &boundary_values, ^ dealii/include/deal.II/numerics/matrix_tools.h:885:3: note: no known conversion for argument 1 from ‘std::map<unsigned int, const dealii::Function<2, std::complex<double> >, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > > >’ to ‘const std::map<unsigned int, double>&’ dealii/include/deal.II/numerics/matrix_tools.h:896:3: note: void dealii::MatrixTools::apply_boundary_values(const std::map<unsigned int, double>&, dealii::TrilinosWrappers::BlockSparseMatrix&, dealii::TrilinosWrappers::MPI::BlockVector&, dealii::TrilinosWrappers::MPI::BlockVector&, bool) apply_boundary_values (const std::map<types::global_dof_index,TrilinosScalar> &boundary_values, ^ dealii/include/deal.II/numerics/matrix_tools.h:896:3: note: no known conversion for argument 1 from ‘std::map<unsigned int, const dealii::Function<2, std::complex<double> >, std::less<unsigned int>, std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > > >’ to ‘const std::map<unsigned int, double>&’ In file included from dealii/include/deal.II/base/point.h:21:0, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/lac/constraint_matrix.h: In instantiation of ‘void dealii::ConstraintMatrix::distribute_local_to_global(const InVector&, const std::vector<unsigned int>&, OutVector&) const [with InVector = dealii::FullMatrix<double>; OutVector = dealii::PETScWrappers::SparseMatrix]’: jc/adapt/petsc_eigs/pFEM.cc:352:50: required from ‘void Adaptive::LaplaceProblem<dim>::assemble_system() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:562:26: required from ‘void Adaptive::LaplaceProblem<dim>::run() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:595:28: required from here dealii/include/deal.II/lac/constraint_matrix.h:1761:31: error: no match for ‘operator==’ (operand types are ‘const dealii::TableIndices<2>’ and ‘std::vector<unsigned int>::size_type {aka long unsigned int}’) Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ dealii/include/deal.II/lac/constraint_matrix.h:1761:31: note: candidates are: Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ In file included from dealii/include/deal.II/base/tensor.h:22:0, from dealii/include/deal.II/base/point.h:22, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/base/table_indices.h:370:1: note: bool dealii::TableIndices<N>::operator==(const dealii::TableIndices<N>&) const [with int N = 2] TableIndices<N>::operator == (const TableIndices<N> &other) const ^ dealii/include/deal.II/base/table_indices.h:370:1: note: no known conversion for argument 1 from ‘std::vector<unsigned int>::size_type {aka long unsigned int}’ to ‘const dealii::TableIndices<2>&’ In file included from dealii/include/deal.II/fe/mapping_q_generic.h:24:0, from dealii/include/deal.II/fe/mapping_q1.h:21, from dealii/include/deal.II/hp/mapping_collection.h:21, from dealii/include/deal.II/numerics/vector_tools.h:27, from jc/adapt/petsc_eigs/pFEM.cc:61: dealii/include/deal.II/base/vectorization.h:2719:1: note: template<class Number> bool dealii::operator==(const dealii::VectorizedArray<Number>&, const dealii::VectorizedArray<Number>&) operator == (const VectorizedArray<Number> &lhs, ^ dealii/include/deal.II/base/vectorization.h:2719:1: note: template argument deduction/substitution failed: In file included from dealii/include/deal.II/base/point.h:21:0, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/lac/constraint_matrix.h:1761:31: note: ‘const dealii::TableIndices<2>’ is not derived from ‘const dealii::VectorizedArray<Number>’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ In file included from dealii/include/deal.II/base/table.h:24:0, from dealii/include/deal.II/lac/full_matrix.h:22, from jc/adapt/petsc_eigs/pFEM.cc:36: dealii/include/deal.II/base/aligned_vector.h:1114:6: note: template<class T> bool dealii::operator==(const dealii::AlignedVector<T>&, const dealii::AlignedVector<T>&) bool operator == (const AlignedVector<T> &lhs, ^ dealii/include/deal.II/base/aligned_vector.h:1114:6: note: template argument deduction/substitution failed: In file included from dealii/include/deal.II/base/point.h:21:0, from dealii/include/deal.II/base/quadrature.h:21, from dealii/include/deal.II/base/quadrature_lib.h:21, from jc/adapt/petsc_eigs/pFEM.cc:29: dealii/include/deal.II/lac/constraint_matrix.h:1761:31: note: ‘const dealii::TableIndices<2>’ is not derived from ‘const dealii::AlignedVector<T>’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:339:11: note: in definition of macro ‘Assert’ if (!(cond)) \ ^ dealii/include/deal.II/base/exceptions.h:342:76: error: no matching function for call to ‘dealii::StandardExceptions::ExcDimensionMismatch::ExcDimensionMismatch(const dealii::TableIndices<2>&, std::vector<unsigned int>::size_type)’ __FILE__, __LINE__, __PRETTY_FUNCTION__, #cond, #exc, exc); \ ^ dealii/include/deal.II/lac/constraint_matrix.h:1761:3: note: in expansion of macro ‘Assert’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:342:76: note: candidates are: __FILE__, __LINE__, __PRETTY_FUNCTION__, #cond, #exc, exc); \ ^ dealii/include/deal.II/lac/constraint_matrix.h:1761:3: note: in expansion of macro ‘Assert’ Assert (local_vector.size() == local_dof_indices.size(), ^ dealii/include/deal.II/base/exceptions.h:932:19: note: dealii::StandardExceptions::ExcDimensionMismatch::ExcDimensionMismatch(std::size_t, std::size_t) DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:478:5: note: in definition of macro ‘DeclException2’ Exception2 (const type1 a1, const type2 a2) : \ ^ dealii/include/deal.II/base/exceptions.h:932:19: note: no known conversion for argument 1 from ‘const dealii::TableIndices<2>’ to ‘std::size_t {aka long unsigned int}’ DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:478:5: note: in definition of macro ‘DeclException2’ Exception2 (const type1 a1, const type2 a2) : \ ^ dealii/include/deal.II/base/exceptions.h:932:19: note: dealii::StandardExceptions::ExcDimensionMismatch::ExcDimensionMismatch(const dealii::StandardExceptions::ExcDimensionMismatch&) DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:476:9: note: in definition of macro ‘DeclException2’ class Exception2 : public dealii::ExceptionBase { \ ^ dealii/include/deal.II/base/exceptions.h:932:19: note: candidate expects 1 argument, 2 provided DeclException2 (ExcDimensionMismatch, ^ dealii/include/deal.II/base/exceptions.h:476:9: note: in definition of macro ‘DeclException2’ class Exception2 : public dealii::ExceptionBase { \ ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:64:0, from /usr/include/c++/4.8/bits/stl_tree.h:61, from /usr/include/c++/4.8/map:60, from /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:38, from /usr/lib/openmpi/include/mpi.h:2087, from dealii/include/deal.II/base/config.h:378, from dealii/include/deal.II/base/quadrature_lib.h:20, from jc/adapt/petsc_eigs/pFEM.cc:29: /usr/include/c++/4.8/bits/stl_pair.h: In instantiation of ‘struct std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > >’: /usr/include/c++/4.8/bits/stl_tree.h:134:12: required from ‘struct std::_Rb_tree_node<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > >’ /usr/include/c++/4.8/bits/stl_tree.h:1125:25: required from ‘void std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_erase(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Link_type) [with _Key = unsigned int; _Val = std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > >; _KeyOfValue = std::_Select1st<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > >; _Compare = std::less<unsigned int>; _Alloc = std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Link_type = std::_Rb_tree_node<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > >*]’ /usr/include/c++/4.8/bits/stl_tree.h:671:28: required from ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::~_Rb_tree() [with _Key = unsigned int; _Val = std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > >; _KeyOfValue = std::_Select1st<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > >; _Compare = std::less<unsigned int>; _Alloc = std::allocator<std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > > >]’ /usr/include/c++/4.8/bits/stl_map.h:96:11: required from ‘void Adaptive::LaplaceProblem<dim>::assemble_system() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:562:26: required from ‘void Adaptive::LaplaceProblem<dim>::run() [with int dim = 2]’ jc/adapt/petsc_eigs/pFEM.cc:595:28: required from here /usr/include/c++/4.8/bits/stl_pair.h:102:11: error: cannot declare field ‘std::pair<const unsigned int, const dealii::Function<2, std::complex<double> > >::second’ to be of abstract type ‘dealii::Function<2, std::complex<double> >’ _T2 second; /// @c second is a copy of the second object ^ In file included from jc/adapt/petsc_eigs/pFEM.cc:30:0: dealii/include/deal.II/base/function.h:141:7: note: because the following virtual functions are pure within ‘dealii::Function<2, std::complex<double> >’: class Function : public FunctionTime<RangeNumberType>, ^ dealii/include/deal.II/base/function.h:872:1: note: dealii::Function<dim, RangeNumberType>::~Function() [with int dim = 2; RangeNumberType = std::complex<double>] Function<dim, RangeNumberType>::~Function () = default; ^ dealii/include/deal.II/base/function.h:872:1: note: dealii::Function<dim, RangeNumberType>::~Function() [with int dim = 2; RangeNumberType = std::complex<double>] make[2]: *** [CMakeFiles/pFEM.dir/pFEM.cc.o] Error 1 make[1]: *** [CMakeFiles/pFEM.dir/all] Error 2