@DEAL_II_EXPAND_PETSC_MPI_BLOCKVECTOR@;
}
+REAL_SERIAL_VECTORS := { Vector<double>;
+ Vector<float> ;
+ Vector<long double>;
+
+ BlockVector<double>;
+ BlockVector<float>;
+ BlockVector<long double>;
+
+ parallel::distributed::Vector<double>;
+ parallel::distributed::Vector<float> ;
+ parallel::distributed::Vector<long double>;
+
+ parallel::distributed::BlockVector<double>;
+ parallel::distributed::BlockVector<float> ;
+ parallel::distributed::BlockVector<long double>;
+
+ @DEAL_II_EXPAND_TRILINOS_VECTOR@;
+ @DEAL_II_EXPAND_TRILINOS_MPI_VECTOR@;
+ @DEAL_II_EXPAND_PETSC_VECTOR_REAL@;
+ @DEAL_II_EXPAND_PETSC_MPI_VECTOR_REAL@;
+
+ @DEAL_II_EXPAND_TRILINOS_BLOCKVECTOR@;
+ @DEAL_II_EXPAND_TRILINOS_MPI_BLOCKVECTOR@;
+ @DEAL_II_EXPAND_PETSC_BLOCKVECTOR_REAL@;
+ @DEAL_II_EXPAND_PETSC_MPI_BLOCKVECTOR_REAL@;
+ }
+
EXTERNAL_SEQUENTIAL_VECTORS := { @DEAL_II_EXPAND_TRILINOS_VECTOR@;
@DEAL_II_EXPAND_TRILINOS_BLOCKVECTOR@;
@DEAL_II_EXPAND_PETSC_VECTOR@;
SET(DEAL_II_EXPAND_PETSC_BLOCKVECTOR "PETScWrappers::BlockVector")
SET(DEAL_II_EXPAND_PETSC_MPI_VECTOR "PETScWrappers::MPI::Vector")
SET(DEAL_II_EXPAND_PETSC_MPI_BLOCKVECTOR "PETScWrappers::MPI::BlockVector")
+ #
+ # FIXME:
+ # temporary variable until deal.II fully support complex-valued PETSc
+ IF( NOT PETSC_WITH_COMPLEX )
+ SET(DEAL_II_EXPAND_PETSC_VECTOR_REAL "PETScWrappers::Vector")
+ SET(DEAL_II_EXPAND_PETSC_BLOCKVECTOR_REAL "PETScWrappers::BlockVector")
+ SET(DEAL_II_EXPAND_PETSC_MPI_VECTOR_REAL "PETScWrappers::MPI::Vector")
+ SET(DEAL_II_EXPAND_PETSC_MPI_BLOCKVECTOR_REAL "PETScWrappers::MPI::BlockVector")
+ ELSE()
+ MESSAGE(STATUS "Compiling with complex-valued algebra")
+ ENDIF()
ENDMACRO()
// ---------------------------------------------------------------------
-for (VEC : SERIAL_VECTORS; DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS)
+for (VEC : REAL_SERIAL_VECTORS; DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS)
{
// codim=0
// ---------------------------------------------------------------------
-for (deal_II_dimension : DIMENSIONS ; VEC : SERIAL_VECTORS ; DH : DOFHANDLER_TEMPLATES)
+for (deal_II_dimension : DIMENSIONS ; VEC : REAL_SERIAL_VECTORS ; DH : DOFHANDLER_TEMPLATES)
{
namespace DerivativeApproximation
\{
// ---------------------------------------------------------------------
-for (VEC : SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
+for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
{
template class DoFOutputOperator<VEC, deal_II_dimension, deal_II_dimension>;
}
}
-for (VEC : SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
+for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
{
template
void PointValueHistory<deal_II_dimension>::evaluate_field
}
-for (VEC : SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
+for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
{
template
void PointValueHistory<deal_II_dimension>::evaluate_field_at_requested_location
const VEC &);
}
-for (VEC : SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
+for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
{
template
void PointValueHistory<deal_II_dimension>::evaluate_field
const Quadrature<deal_II_dimension> &);
}
-for (VEC : SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
+for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS)
{
template
void PointValueHistory<deal_II_dimension>::evaluate_field