[deal.II] Trying to interpolate deal.ii solution to a Cartesian grid

2023-03-07 Thread Elyn Luo
Hello,

I have a solution on an unstructured grid obtained by deal.ii in VTU 
format, and now I want to interpolate it to a cartesian grid for further 
processing in other softwares. It seems like Paraview can do the job, but 
I'm wondering if this can be done in deal.ii directly? Thank you!

Best,
Elyn


-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/4ed908fe-faeb-4064-8721-cf90e03015abn%40googlegroups.com.


[deal.II] deal.II Newsletter #244

2023-03-07 Thread 'Rene Gassmoeller' via deal.II User Group
Hello everyone!

This is deal.II newsletter #244.
It automatically reports recently merged features and discussions about the 
deal.II finite element library.


## Below you find a list of recently proposed or merged features:

#14850: Implement InverseCellwiseMassMatrix with tensor var. coeff. (proposed 
by btemuer) https://github.com/dealii/dealii/pull/14850

#14849: Speed-up icpc CI (proposed by masterleinad) 
https://github.com/dealii/dealii/pull/14849

#14848: CI: print full compiler command line (proposed by tamiko; merged) 
https://github.com/dealii/dealii/pull/14848

#14847: Print detailed.log instead of archiving it (proposed by masterleinad; 
merged) https://github.com/dealii/dealii/pull/14847

#14846: make_array_view overload for AlignedVector (proposed by sebproell; 
merged) https://github.com/dealii/dealii/pull/14846

#14845: Extract link line from CI (proposed by tamiko) 
https://github.com/dealii/dealii/pull/14845

#14842: Do not allow assigning to rvalue references of VectorizedArray. 
(proposed by bangerth; merged) https://github.com/dealii/dealii/pull/14842

#14839: SymmetricTensor access returns const reference (proposed by sebproell; 
merged) https://github.com/dealii/dealii/pull/14839

#14838: Fix SymmetricTensor::deviator for VectorizedArray (proposed by 
sebproell; merged) https://github.com/dealii/dealii/pull/14838

#14837: Move AdditionalData outside of class definition (proposed by sebproell) 
https://github.com/dealii/dealii/pull/14837

#14836: Play with C++20 concepts (proposed by bangerth; merged) 
https://github.com/dealii/dealii/pull/14836

#14829: Make Mapping::get_center() work with simplices. (proposed by drwells; 
merged) https://github.com/dealii/dealii/pull/14829

#14806: enable compressed debug info for library (proposed by tjhei; merged) 
https://github.com/dealii/dealii/pull/14806

#14751: Fix compiling for the Kokkos CUDA backend using clang (proposed by 
masterleinad; merged) https://github.com/dealii/dealii/pull/14751

#14727: Get mapped vertices of face (proposed by jh66637; merged) 
https://github.com/dealii/dealii/pull/14727


## And this is a list of recently opened or closed discussions:

#14844: Step-70 runtime error (opened) 
https://github.com/dealii/dealii/issues/14844

#14843: Adding tensor-valued variable coefficients to matrix-free 
CellwiseInverseMassMatrix (opened) https://github.com/dealii/dealii/issues/14843

#14841: active_dof_index out of range gives no exception when FECollection has 
size 1 (opened) https://github.com/dealii/dealii/issues/14841

#14840: Add C++20-style concepts to deal.II classes and functions (opened) 
https://github.com/dealii/dealii/issues/14840

#14749: building with Clang 15.0.7 and cuda support (closed) 
https://github.com/dealii/dealii/issues/14749


A list of all major changes since the last release can be found at 
https://www.dealii.org/developer/doxygen/deal.II/recent_changes.html.


Thanks for being part of the community!


Let us know about questions, problems, bugs or just share your experience by 
writing to dealii@googlegroups.com, or by opening issues or pull requests at 
https://www.github.com/dealii/dealii.
Additional information can be found at https://www.dealii.org/.

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/64076da9.050a0220.b1964.c4e3SMTPIN_ADDED_MISSING%40gmr-mx.google.com.


[deal.II] Re: Dimension Mismatch

2023-03-07 Thread jack urombo
Took a brief hiatus. and managed to pass a huddle following Marc's 
suggestion.

Now I have set to construct convergence tables for the polymer flow problem 
I am solving. It involves solving a Stokes Problem for velocity and 
pressure (u,p), (size dim+1)  and the Constitutive Equations for the stress 
tensor tau, (size dim*dim). The solution has 7 components for dim=2. 
To calculate the errors, I need the exact solution [(u,p), tau], ( size dim 
+1 + dim*dim). To pick the correct component I use the 
ComponentSelectFunction:

const ComponentSelectFunction

velocity_mask(std::make_pair(0, dim), dim*dim+dim+1);

const ComponentSelectFunction

pressure_mask (dim, dim+3);

const ComponentSelectFunction

stress_mask(std::pair(dim+3, dim*dim+dim+1), dim*dim+dim+1);
Now the errors that I am getting are: 

/home/jurombo/binaires/dealii/nnf/nnewton/oldroyd_b_stab/oldroyd_bn.cc:951:43: 
error: 
no matching fu
nction for call to ‘integrate_difference(dealii::MappingQ<2, 2>&, 
dealii::DoFHandler<2, 2>&, dealii:
:BlockVector&, Viscoelastic::ExactSolution<7>&, 
dealii::Vector&, dealii::QGauss<7>&,
dealii::VectorTools::NormType, const dealii::ComponentSelectFunction<7, 
double>*)’ 
 951 | VectorTools::integrate_difference (mapping, dof_handler, 
 | ~~^~ 
 952 |solution, 
 |~ 
 953 |exact_solution, 
 |~~~ 
 954 |cellwise_errors, 
 | 
 955 |quadrature, 
 |~~~ 
 956 |VectorTools::H1_seminorm, 
 |~ 
 957 |_mask); 
 |~~~ 
/usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:143:3:
 note: 
ca
ndidate: ‘template 
void dealii::VectorTools:
:integrate_difference(const dealii::Mapping&, const 
dealii::DoFHandler
&, const InVector&, const dealii::Function&, OutVector&, co
nst dealii::Quadrature&, const NormType&, const 
dealii::Function*, double)’ 
 143 |   integrate_difference( 
 |   ^~~~ 
/usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:143:3:
 note: 
  
template argument deduction/substitution failed: 
/home/jurombo/binaires/dealii/nnf/nnewton/oldroyd_b_stab/oldroyd_bn.cc:951:43: 
note: 
  deduced confl
icting values for non-type parameter ‘spacedim’ (‘2’ and ‘7’) 
 951 | VectorTools::integrate_difference (mapping, dof_handler, 
 | ~~^~ 
 952 |solution, 
 |~ 
 953 |exact_solution, 
 |~~~ 
 954 |cellwise_errors, 
 | 
 955 |quadrature, 
 |~~~ 
 956 |VectorTools::H1_seminorm, 
 |~ 
 957 |_mask); 
 |~~~ 
/usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:160:3:
 note: 
ca
ndidate: ‘template 
void dealii::VectorTools:
:integrate_difference(const dealii::DoFHandler&, const 
InVector&, const dealii::Funct
ion&, OutVector&, const 
dealii::Quadrature&, const Nor
mType&, const dealii::Function*, double)’

The issues seem to be emanating from the form of the *exact_solution *and 
how the components are selected.
Ant suggestions on resolving this?


On Monday, 6 February 2023 at 03:11:19 UTC+2 wrote:

Hello Jack,

the error message is quite descriptive and tells you that something is off 
with the number of components of your Function object:

*The violated condition was:  exact_solution.n_components == 
n_components*

Check line 200 of your code:
ExactSolution () : Function(dim+1) {}

You call the constructor for Function with 3 components (since dim=2 in 
your case). However, your implementation returns 7 components. Make sure 
that you call the constructor with the right number of components.

Marc

On Saturday, February 4, 2023 at 8:54:47 AM UTC-7 

[deal.II] Re: Dimension Mismatch

2023-03-07 Thread jack urombo
The code is attached this message.

On Wednesday, 8 March 2023 at 05:38:43 UTC+2 jack urombo wrote:

> Took a brief hiatus. and managed to pass a huddle following Marc's 
> suggestion.
>
> Now I have set to construct convergence tables for the polymer flow 
> problem I am solving. It involves solving a Stokes Problem for velocity and 
> pressure (u,p), (size dim+1)  and the Constitutive Equations for the stress 
> tensor tau, (size dim*dim). The solution has 7 components for dim=2. 
> To calculate the errors, I need the exact solution [(u,p), tau], ( size 
> dim +1 + dim*dim). To pick the correct component I use the 
> ComponentSelectFunction:
>
> const ComponentSelectFunction
>
> velocity_mask(std::make_pair(0, dim), dim*dim+dim+1);
>
> const ComponentSelectFunction
>
> pressure_mask (dim, dim+3);
>
> const ComponentSelectFunction
>
> stress_mask(std::pair(dim+3, dim*dim+dim+1), dim*dim+dim+1);
> Now the errors that I am getting are: 
>
>
> /home/jurombo/binaires/dealii/nnf/nnewton/oldroyd_b_stab/oldroyd_bn.cc:951:43:
>  error: 
> no matching fu
> nction for call to ‘integrate_difference(dealii::MappingQ<2, 2>&, 
> dealii::DoFHandler<2, 2>&, dealii:
> :BlockVector&, Viscoelastic::ExactSolution<7>&, 
> dealii::Vector&, dealii::QGauss<7>&,
> dealii::VectorTools::NormType, const dealii::ComponentSelectFunction<7, 
> double>*)’ 
>  951 | VectorTools::integrate_difference (mapping, dof_handler, 
>  | ~~^~ 
>  952 |solution, 
>  |~ 
>  953 |exact_solution, 
>  |~~~ 
>  954 |cellwise_errors, 
>  | 
>  955 |quadrature, 
>  |~~~ 
>  956 | 
>VectorTools::H1_seminorm, 
>  |
> ~ 
>  957 |_mask); 
>  |~~~ 
>
> /usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:143:3:
>  note: 
> ca
> ndidate: ‘template spacedim> void dealii::VectorTools:
> :integrate_difference(const dealii::Mapping&, const 
> dealii::DoFHandler
>
> &, const InVector&, const dealii::Function InVector::value_type>&, OutVector&, co
> nst dealii::Quadrature&, const NormType&, const 
> dealii::Function*, double)’ 
>  143 |   integrate_difference( 
>  |   ^~~~ 
>
> /usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:143:3:
>  note: 
>   
> template argument deduction/substitution failed: 
>
> /home/jurombo/binaires/dealii/nnf/nnewton/oldroyd_b_stab/oldroyd_bn.cc:951:43:
>  note: 
>   deduced confl
> icting values for non-type parameter ‘spacedim’ (‘2’ and ‘7’) 
>  951 | VectorTools::integrate_difference (mapping, dof_handler, 
>  | ~~^~ 
>  952 |solution, 
>  |~ 
>  953 |exact_solution, 
>  |~~~ 
>  954 |cellwise_errors, 
>  | 
>  955 |quadrature, 
>  |~~~ 
>  956 | 
>VectorTools::H1_seminorm, 
>  |
> ~ 
>  957 |_mask); 
>  |~~~ 
>
> /usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:160:3:
>  note: 
> ca
> ndidate: ‘template spacedim> void dealii::VectorTools:
> :integrate_difference(const dealii::DoFHandler&, const 
> InVector&, const dealii::Funct
> ion&, OutVector&, const 
> dealii::Quadrature&, const Nor
> mType&, const dealii::Function*, double)’
>
> The issues seem to be emanating from the form of the *exact_solution *and 
> how the components are selected.
> Ant suggestions on resolving this?
>
>
> 
> On Monday, 6 February 2023 at 03:11:19 UTC+2 wrote:
>
> Hello Jack,
>
> the error message is quite descriptive and tells you that something is off 
> with the number of components of your Function object:
>
> *The violated condition was:  exact_solution.n_components == 
> 

[deal.II] Re: trying to install dealii 9.1.1 using candi.

2023-03-07 Thread Bruno Turcksin
Hello,

It looks like the error is from boost. Which version are you using? What's 
your compiler?

Best,

Bruno

On Tuesday, March 7, 2023 at 12:58:10 AM UTC-5 me20...@iittp.ac.in wrote:

> Dear Sir/Ma'am,
> trying to install dealii-9.1.1 version using candi command. i just change 
> the version in candi.cfg from 9.4.2 to 9.1.1 as suggested.then uses candi 
> commands to install. But i am getting error.
> please help me out.
>
> Thank you.
>
> usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h:101:22:
>  
> warning: ‘virtual MPI::Intracomm& MPI::Intracomm::Clone() const’ can be 
> marked override [-Wsuggest-override]
>   101 |   virtual Intracomm& Clone() const;
>   |  ^
> In file included from /usr/lib/x86_64-linux-gnu/
> openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:227,
>  from /usr/lib/x86_64-linux-gnu/
> openmpi/include/mpi.h:2887,
>  from /home/newton/dealii-candi/tmp/
> build/deal.II-v9.1.1/include/deal.II/base/config.h:439,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/base/tensor.h:19,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/base/derivative_form.h:19,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/numerics/vector_tools.
> templates.h:20,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/source/numerics/vector_tools_boundary.cc:17:
> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/topology.h:65:21:
>  
> warning: ‘virtual MPI::Cartcomm& MPI::Cartcomm::Clone() const’ can be 
> marked override [-Wsuggest-override]
>65 |   virtual Cartcomm& Clone() const;
>   | ^
> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/topology.h:143:22:
>  
> warning: ‘virtual MPI::Graphcomm& MPI::Graphcomm::Clone() const’ can be 
> marked override [-Wsuggest-override]
>   143 |   virtual Graphcomm& Clone() const;
>   |  ^
> In file included from /usr/lib/x86_64-linux-gnu/
> openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:228,
>  from /usr/lib/x86_64-linux-gnu/
> openmpi/include/mpi.h:2887,
>  from /home/newton/dealii-candi/tmp/
> build/deal.II-v9.1.1/include/deal.II/base/config.h:439,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/base/tensor.h:19,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/base/derivative_form.h:19,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/numerics/vector_tools.
> templates.h:20,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/source/numerics/vector_tools_boundary.cc:17:
> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h:75:22:
>  
> warning: ‘virtual MPI::Intercomm& MPI::Intercomm::Clone() const’ can be 
> marked override [-Wsuggest-override]
>75 |   virtual Intercomm& Clone() const;
>   |  ^
> In file included from /usr/lib/x86_64-linux-gnu/
> openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:277,
>  from /usr/lib/x86_64-linux-gnu/
> openmpi/include/mpi.h:2887,
>  from /home/newton/dealii-candi/tmp/
> build/deal.II-v9.1.1/include/deal.II/base/config.h:439,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/base/tensor.h:19,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/base/derivative_form.h:19,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/include/deal.II/numerics/vector_tools.
> templates.h:20,
>  from /home/newton/dealii-candi/tmp/
> unpack/deal.II-v9.1.1/source/numerics/vector_tools_boundary.cc:17:
> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h: 
> In member function ‘virtual void MPI::Op::Init(void (*)(const void*, void*, 
> int, const MPI::Datatype&), bool)’:
> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h:121:25:
>  
> warning: cast between incompatible function types from ‘void (*)(void*, 
> void*, int*, ompi_datatype_t**, void (*)(void*, void*, int*, 
> ompi_datatype_t**))’ to ‘void (*)(void*, void*, int*, ompi_datatype_t**)’ 
> [-Wcast-function-type]
>   121 | (void)MPI_Op_create((MPI_User_function*) 
> ompi_mpi_cxx_op_intercept,
>   | ^~
> 
> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h:123:38:
>  
> warning: cast between incompatible function types from ‘void (*)(const 
> void*, void*, int, const MPI::Datatype&)’ to ‘void (*)(void*, void*, int*, 
> ompi_datatype_t**)’ [-Wcast-function-type]
>   123 | ompi_op_set_cxx_callback(mpi_op, 

Re: [deal.II] Re: Dimension Mismatch

2023-03-07 Thread Wolfgang Bangerth



Jack:
You are creating a Function=Function<7>, but that is not right. 
The template argument denotes the number of components of the *input* vector 
'x' for which you want to evaluate 'f(x)'. It does not denote the number of 
*output* vector components. It should only be ComponentSelectFunction.


Best
 W.

On 3/7/23 20:38, jack urombo wrote:

*** Caution: EXTERNAL Sender ***

Took a brief hiatus. and managed to pass a huddle following Marc's suggestion.

Now I have set to construct convergence tables for the polymer flow problem I 
am solving. It involves solving a Stokes Problem for velocity and pressure 
(u,p), (size dim+1)  and the Constitutive Equations for the stress tensor tau, 
(size dim*dim). The solution has 7 components for dim=2.
To calculate the errors, I need the exact solution [(u,p), tau], ( size dim +1 
+ dim*dim). To pick the correct component I use the ComponentSelectFunction:


constComponentSelectFunction

velocity_mask(std::make_pair(0,dim),dim*dim+dim+1);

constComponentSelectFunction

pressure_mask(dim,dim+3);

constComponentSelectFunction

stress_mask(std::pair(dim+3,dim*dim+dim+1),dim*dim+dim+1);

Now the errors that I am getting are:

/home/jurombo/binaires/dealii/nnf/nnewton/oldroyd_b_stab/oldroyd_bn.cc:951:43:error:
 no matching fu
nction for call to ‘integrate_difference(dealii::MappingQ<2, 2>&, 
dealii::DoFHandler<2, 2>&, dealii:
:BlockVector&, Viscoelastic::ExactSolution<7>&, 
dealii::Vector&, dealii::QGauss<7>&,
dealii::VectorTools::NormType, const dealii::ComponentSelectFunction<7, 
double>*)’

  951 | VectorTools::integrate_difference (mapping, dof_handler,
  | ~~^~
  952 |    solution,
  | ~
  953 |    exact_solution,
  | ~~~
  954 |    cellwise_errors,
  | 
  955 |    quadrature,
  | ~~~
  956 |    VectorTools::H1_seminorm,
  | ~
  957 |    _mask);
  | ~~~
/usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:143:3:note:
 ca
ndidate: ‘template 
void dealii::VectorTools:
:integrate_difference(const dealii::Mapping&, const 
dealii::DoFHandler
&, const InVector&, const dealii::FunctionInVector::value_type>&, OutVector&, co
nst dealii::Quadrature&, const NormType&, const 
dealii::Function*, double)’

  143 | integrate_difference(
  | ^~~~
/usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:143:3:note:
template argument deduction/substitution failed:
/home/jurombo/binaires/dealii/nnf/nnewton/oldroyd_b_stab/oldroyd_bn.cc:951:43:note:
   deduced confl
icting values for non-type parameter ‘spacedim’ (‘2’ and ‘7’)
  951 | VectorTools::integrate_difference (mapping, dof_handler,
  | ~~^~
  952 |    solution,
  | ~
  953 |    exact_solution,
  | ~~~
  954 |    cellwise_errors,
  | 
  955 |    quadrature,
  | ~~~
  956 |    VectorTools::H1_seminorm,
  | ~
  957 |    _mask);
  | ~~~
/usr/local/share/dealii/include/deal.II/numerics/vector_tools_integrate_difference.h:160:3:note:
 ca
ndidate: ‘template 
void dealii::VectorTools:
:integrate_difference(const dealii::DoFHandler&, const 
InVector&, const dealii::Funct
ion&, OutVector&, const 
dealii::Quadrature&, const Nor

mType&, const dealii::Function*, double)’

The issues seem to be emanating from the form of the *exact_solution *and how 
the components are selected.

Ant suggestions on resolving this?


On Monday, 6 February 2023 at 03:11:19 UTC+2 wrote:

Hello Jack,

the error message is quite descriptive and tells you that something is off
with the number of components of your Function object:
//The violated condition was:
    exact_solution.n_components == n_components//

Check line 200 of your code:
         ExactSolution () : Function(dim+1) {}

You call the constructor for Function with 3 components (since dim=2 in
your case). However, your implementation returns 7 components. Make sure
that you call the constructor with the right number of components.

Marc

On Saturday, February 4, 2023 at 8:54:47 AM UTC-7 jack urombo wrote:

i am using the implimenation by Jaekwang Kim to model polymer flows.
The major change that I 

[deal.II] Re: trying to install dealii 9.1.1 using candi.

2023-03-07 Thread ME20D503 NEWTON
Dear Bruno,
i am using ubuntu 22.04.1 and g++ (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0.

Thank you.


On Wednesday, March 8, 2023 at 3:18:47 AM UTC+5:30 bruno.t...@gmail.com 
wrote:

> Hello,
>
> It looks like the error is from boost. Which version are you using? What's 
> your compiler?
>
> Best,
>
> Bruno
>
> On Tuesday, March 7, 2023 at 12:58:10 AM UTC-5 me20...@iittp.ac.in wrote:
>
>> Dear Sir/Ma'am,
>> trying to install dealii-9.1.1 version using candi command. i just change 
>> the version in candi.cfg from 9.4.2 to 9.1.1 as suggested.then uses candi 
>> commands to install. But i am getting error.
>> please help me out.
>>
>> Thank you.
>>
>> usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h:101:22:
>>  
>> warning: ‘virtual MPI::Intracomm& MPI::Intracomm::Clone() const’ can be 
>> marked override [-Wsuggest-override]
>>   101 |   virtual Intracomm& Clone() const;
>>   |  ^
>> In file included from /usr/lib/x86_64-linux-gnu/
>> openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:227,
>>  from /usr/lib/x86_64-linux-gnu/
>> openmpi/include/mpi.h:2887,
>>  from /home/newton/dealii-candi/tmp/
>> build/deal.II-v9.1.1/include/deal.II/base/config.h:439,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/base/tensor.h:19,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/base/derivative_form.h:19,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/numerics/vector_tools.
>> templates.h:20,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/source/numerics/vector_tools_boundary.cc:17:
>> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/topology.h:65:21:
>>  
>> warning: ‘virtual MPI::Cartcomm& MPI::Cartcomm::Clone() const’ can be 
>> marked override [-Wsuggest-override]
>>65 |   virtual Cartcomm& Clone() const;
>>   | ^
>> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/topology.h:143:22:
>>  
>> warning: ‘virtual MPI::Graphcomm& MPI::Graphcomm::Clone() const’ can be 
>> marked override [-Wsuggest-override]
>>   143 |   virtual Graphcomm& Clone() const;
>>   |  ^
>> In file included from /usr/lib/x86_64-linux-gnu/
>> openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:228,
>>  from /usr/lib/x86_64-linux-gnu/
>> openmpi/include/mpi.h:2887,
>>  from /home/newton/dealii-candi/tmp/
>> build/deal.II-v9.1.1/include/deal.II/base/config.h:439,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/base/tensor.h:19,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/base/derivative_form.h:19,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/numerics/vector_tools.
>> templates.h:20,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/source/numerics/vector_tools_boundary.cc:17:
>> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h:75:22:
>>  
>> warning: ‘virtual MPI::Intercomm& MPI::Intercomm::Clone() const’ can be 
>> marked override [-Wsuggest-override]
>>75 |   virtual Intercomm& Clone() const;
>>   |  ^
>> In file included from /usr/lib/x86_64-linux-gnu/
>> openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h:277,
>>  from /usr/lib/x86_64-linux-gnu/
>> openmpi/include/mpi.h:2887,
>>  from /home/newton/dealii-candi/tmp/
>> build/deal.II-v9.1.1/include/deal.II/base/config.h:439,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/base/tensor.h:19,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/base/derivative_form.h:19,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/include/deal.II/numerics/vector_tools.
>> templates.h:20,
>>  from /home/newton/dealii-candi/tmp/
>> unpack/deal.II-v9.1.1/source/numerics/vector_tools_boundary.cc:17:
>> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h: 
>> In member function ‘virtual void MPI::Op::Init(void (*)(const void*, void*, 
>> int, const MPI::Datatype&), bool)’:
>> /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h:121:25:
>>  
>> warning: cast between incompatible function types from ‘void (*)(void*, 
>> void*, int*, ompi_datatype_t**, void (*)(void*, void*, int*, 
>> ompi_datatype_t**))’ to ‘void (*)(void*, void*, int*, ompi_datatype_t**)’ 
>> [-Wcast-function-type]
>>   121 | (void)MPI_Op_create((MPI_User_function*) 
>> ompi_mpi_cxx_op_intercept,
>>   | ^~
>> 
>>