for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS)
{
#if deal_II_dimension <= deal_II_space_dimension
+#if (deal_II_space_dimension == DIM_A) || (deal_II_space_dimension == DIM_B)
template class FEValuesData<deal_II_dimension,deal_II_space_dimension>;
template class FEValuesBase<deal_II_dimension,deal_II_space_dimension>;
template class Vector<deal_II_dimension, deal_II_space_dimension>;
template class SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>;
\}
+#endif
#endif
}
for (dof_handler : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; lda : BOOL)
{
#if deal_II_dimension <= deal_II_space_dimension
+#if (deal_II_space_dimension == DIM_A) || (deal_II_space_dimension == DIM_B)
template void FEValues<deal_II_dimension,deal_II_space_dimension>::reinit(
TriaIterator<DoFCellAccessor<dof_handler<deal_II_dimension,deal_II_space_dimension>, lda> >);
TriaIterator<DoFCellAccessor<dof_handler<deal_II_dimension,deal_II_space_dimension>, lda> >, unsigned int);
template void FESubfaceValues<deal_II_dimension,deal_II_space_dimension>::reinit(
TriaIterator<DoFCellAccessor<dof_handler<deal_II_dimension,deal_II_space_dimension>, lda> >, unsigned int, unsigned int);
+#endif
#endif
}
for (VEC : SERIAL_VECTORS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS)
{
#if deal_II_dimension <= deal_II_space_dimension
+#if (deal_II_space_dimension == DIM_A) || (deal_II_space_dimension == DIM_B)
template
void FEValuesViews::Scalar<deal_II_dimension, deal_II_space_dimension>
::get_function_values<dealii::VEC>
void FEValuesViews::SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>
::get_function_divergences<dealii::VEC>
(const dealii::VEC&, std::vector<Tensor<1,deal_II_space_dimension> >&) const;
-
+#endif
#endif
}
for (VEC : SERIAL_VECTORS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS)
{
#if deal_II_dimension <= deal_II_space_dimension
+#if (deal_II_space_dimension == DIM_A) || (deal_II_space_dimension == DIM_B)
template
void FEValuesBase<deal_II_dimension,deal_II_space_dimension>::get_function_values<VEC>
(const VEC&, const VectorSlice<const std::vector<unsigned int> >&,
std::vector<std::vector<float> > &, bool) const;
+#endif
#endif
}
for (deal_II_dimension : DIMENSIONS)
{
+#if (deal_II_dimension == DIM_A) || (deal_II_dimension == DIM_B)
template
void FEValuesViews::Scalar<deal_II_dimension>::get_function_values<dealii::IndexSet>
(const dealii::IndexSet&, std::vector<double>&) const;
(const dealii::IndexSet&, std::vector<Tensor<1,deal_II_dimension+1> >&) const;
#endif
-
+#endif
}
for (deal_II_dimension : DIMENSIONS)
{
+#if (deal_II_dimension == DIM_A) || (deal_II_dimension == DIM_B)
template
void FEValuesBase<deal_II_dimension>::get_function_values<IndexSet>
(const IndexSet&, std::vector<double>&) const;
(const IndexSet&, const VectorSlice<const std::vector<unsigned int> >&,
std::vector<std::vector<float> > &, bool) const;
-
+#endif
#endif
}
--- /dev/null
+//---------------------------------------------------------------------------
+// $Id: $
+// Version: $Name$
+//
+// Copyright (C) 2013 by the deal.II authors
+//
+// This file is subject to QPL and may not be distributed
+// without copyright and license information. Please refer
+// to the file deal.II/doc/license.html for the text and
+// further information on this license.
+//
+//---------------------------------------------------------------------------
+
+
+// This file compiles the second half of the instantiations from fe_values.cc
+// to get the memory consumption below 1.5gb with gcc.
+
+#define FE_VALUES_INSTANTIATE_PART_TWO
+
+#include "fe_values.cc"
--- /dev/null
+//---------------------------------------------------------------------------
+// $Id: $
+// Version: $Name$
+//
+// Copyright (C) 2013 by the deal.II authors
+//
+// This file is subject to QPL and may not be distributed
+// without copyright and license information. Please refer
+// to the file deal.II/doc/license.html for the text and
+// further information on this license.
+//
+//---------------------------------------------------------------------------
+
+
+// This file compiles the second half of the instantiations from solution_transfer.cc
+// to get the memory consumption below 1.5gb with gcc (if compiling with PETSc and Trilinos).
+
+#define SOLUTION_TRANSFER_INSTANTIATE_PART_TWO
+
+#include "solution_transfer.cc"