I just added spacedim loop for the first two 'for loop' blocks.
for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS)
{
#if deal_II_dimension <= deal_II_space_dimension
template void DoFTools::make_periodicity_constraints(
const DoFHandler<deal_II_dimension, deal_II_space_dimension>::face_iterator &,
const DoFHandler<deal_II_dimension, deal_II_space_dimension>::face_iterator &,
AffineConstraints<double> &,
const ComponentMask &,
bool,
bool,
bool,
const FullMatrix<double> &,
const std::vector<unsigned int> &,
const double);
#ifdef DEAL_II_WITH_COMPLEX_VALUES
template void DoFTools::make_periodicity_constraints(
const DoFHandler<deal_II_dimension, deal_II_space_dimension>::face_iterator &,
const DoFHandler<deal_II_dimension, deal_II_space_dimension>::face_iterator &,
AffineConstraints<std::complex<double>> &,
const ComponentMask &,
bool,
bool,
bool,
const FullMatrix<double> &,
const std::vector<unsigned int> &,
std::complex<double>);
#endif
#endif
}
for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS)
{
#if deal_II_dimension <= deal_II_space_dimension
template void DoFTools::make_periodicity_constraints<deal_II_dimension,
deal_II_space_dimension,
double>(
const std::vector<GridTools::PeriodicFacePair<
DoFHandler<deal_II_dimension, deal_II_space_dimension>::cell_iterator>> &,
AffineConstraints<double> &,
const ComponentMask &,
const std::vector<unsigned int> &,
const double);
#ifdef DEAL_II_WITH_COMPLEX_VALUES
template void DoFTools::make_periodicity_constraints<deal_II_dimension,
deal_II_space_dimension,
std::complex<double>>(
const std::vector<GridTools::PeriodicFacePair<
DoFHandler<deal_II_dimension, deal_II_space_dimension>::cell_iterator>> &,
AffineConstraints<std::complex<double>> &,
const ComponentMask &,
const std::vector<unsigned int> &,
const std::complex<double>);
#endif
template void DoFTools::make_periodicity_constraints(
const DoFHandler<deal_II_dimension, deal_II_space_dimension> &,
const types::boundary_id,
const types::boundary_id,
const unsigned int,
AffineConstraints<double> &,
const ComponentMask &,
const double);
#ifdef DEAL_II_WITH_COMPLEX_VALUES
template void DoFTools::make_periodicity_constraints(
const DoFHandler<deal_II_dimension, deal_II_space_dimension> &,
const types::boundary_id,
const types::boundary_id,
const unsigned int,
AffineConstraints<std::complex<double>> &,
const ComponentMask &,
const std::complex<double>);
#endif
template void DoFTools::make_periodicity_constraints(
const DoFHandler<deal_II_dimension, deal_II_space_dimension> &,
const types::boundary_id,
const unsigned int,
AffineConstraints<double> &,
const ComponentMask &,
const double);
#ifdef DEAL_II_WITH_COMPLEX_VALUES
template void DoFTools::make_periodicity_constraints(
const DoFHandler<deal_II_dimension, deal_II_space_dimension> &,
const types::boundary_id,
const unsigned int,
AffineConstraints<std::complex<double>> &,
const ComponentMask &,
const std::complex<double>);
#endif
#endif
}
​
Although the build was successful, I am not sure how to check if its implemented correctly or not. One more slightly basic question, do I need to build all the other files if I only changed this one file? Does it not detect that only one file was changed? This is the way one goes about changing stuff right?
Also, I will be sure to put a pull request if it works.