On 6/27/22 14:10, Elyn Luo wrote:
>
> *deduced conflicting types for parameter ‘const Iterator’
> (‘dealii::TriaActiveIterator<dealii::DoFCellAccessor<dealii::hp::DoFHandler<2,
> 2>, false> >’ and ‘dealii::DoFHandler<2>::active_cell_iterator’ {aka
> ‘dealii::TriaActiveIterator<dealii::DoFCellAccessor<dealii::DoFHandler<2>,
> false> >’})*
Somewhere in the list of arguments that you are passing, you are using *both*
DoFHandler::active_cell_iterator and hp::DoFHandler::active_cell_iterator.
These needs to be the same. Which argument is problematic I don't know because
I don't know the code nor the exact error message, but looking at the
signature of the function you are calling, namely
template <typename MainClass,
typename Iterator,
typename ScratchData,
typename CopyData>
void
run(const Iterator & begin,
const typename identity<Iterator>::type &end,
MainClass & main_object,
void (MainClass::*worker)(const Iterator &, ScratchData &, CopyData &),
void (MainClass::*copier)(const CopyData &),
const ScratchData &sample_scratch_data,
const CopyData & sample_copy_data,
const unsigned int queue_length = 2 * MultithreadInfo::n_threads(),
const unsigned int chunk_size = 8)
...the 'Iterator' template argument appears both in the first argument 'begin'
and in 'worker'. What is the function signature for
ElasticWaveEquation::local_assemble_system() in your case? Does it take a
DoFHandler::active_cell_iterator or hp::DoFHandler::active_cell_iterator as
first argument?
Best
W.
--
------------------------------------------------------------------------
Wolfgang Bangerth email:
bang...@colostate.edu
www:
http://www.math.colostate.edu/~bangerth/