Hello all,
I have an installation of PETSc with support for complex numbers ('--with-scalar-type=complex' as the installation argument), and now I am trying to compile deal with this installation of PETSc. I am getting errors that look like
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/home/artur/dealii-8.3.0/source/numerics/data_out_dof_data.cc:In instantiation of ‘void dealii::internal::DataOut::DataEntry<DH, VectorType>::get_function_values(const dealii::FEValuesBase<DH:: dimension, DH:: space_dimension>&, std::vector<double>&) const [with DH = dealii::hp::DoFHandler<1, 3>; VectorType = dealii::PETScWrappers::MPI::BlockVector]’:
/home/artur/dealii-8.3.0/source/numerics/data_out_dof_data.cc:1251:1: required from here
/home/artur/dealii-8.3.0/source/numerics/data_out_dof_data.cc:589:25: error: cannot convert ‘__gnu_cxx::__alloc_traits<std::allocator<std::complex<double> > >::value_type {aka std::complex<double>}’ to ‘__gnu_cxx::__alloc_traits<std::allocator<double> >::value_type {aka double}’ in assignment
patch_values[i] = tmp[i];
^
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
For a standard PETSc installation (without support for complex numbers), deal compiles without any problems. I have two questions:
1) Does deal support complex PETSc vectors and matrices?
2) Is there a way to work around the error above?
Best,
Artur