source_fe_matrix(k, j) = source_fe.shape_value(j, unit_points[k]);
FullMatrix<double> this_matrix(this->dofs_per_cell, this->dofs_per_cell);
- auto *const polynomial_space_p =
- dynamic_cast<PolynomialsP<dim> *>(this->poly_space.get());
- Assert(polynomial_space_p != nullptr, ExcInternalError());
for (unsigned int j = 0; j < this->dofs_per_cell; ++j)
for (unsigned int k = 0; k < unit_points.size(); ++k)
this_matrix(k, j) =
- polynomial_space_p->compute_value(j, unit_points[k]);
+ this->poly_space->compute_value(j, unit_points[k]);
this_matrix.gauss_jordan();
// cell and evaluate the
// shape functions there
const Point<dim> p = this->unit_support_points[j];
- auto *const polynomial_space_p =
- dynamic_cast<TensorProductPolynomials<dim> *>(this->poly_space.get());
- Assert(polynomial_space_p != nullptr, ExcInternalError());
for (unsigned int i = 0; i < this->dofs_per_cell; ++i)
- cell_interpolation(j, i) = polynomial_space_p->compute_value(i, p);
+ cell_interpolation(j, i) = this->poly_space->compute_value(i, p);
for (unsigned int i = 0; i < source_fe.dofs_per_cell; ++i)
- source_interpolation(j, i) = polynomial_space_p->compute_value(i, p);
+ source_interpolation(j, i) = source_fe.poly_space->compute_value(i, p);
}
// then compute the