Skip to content
Snippets Groups Projects
Commit 99344a7a authored by Praetorius, Simon's avatar Praetorius, Simon
Browse files

Merge branch 'issue/interpolate-changes' into 'master'

removed dependency on dune-functions interpolate due to breaking changes

See merge request !130
parents cf41b398 299dce18
No related branches found
No related tags found
1 merge request!130removed dependency on dune-functions interpolate due to breaking changes
......@@ -84,22 +84,22 @@ double calcError(Problem const& prob, Fcts const& funcs)
auto& globalBasis = *prob->globalBasis();
auto localView = globalBasis.localView();
auto const& sol = prob->solution().coefficients();
std::vector<double> ref;
ref.resize(globalBasis.dimension());
auto ref = makeDOFVector(globalBasis, DataTransferOperation::NO_OPERATION);
int k = 0;
// interpolate given function onto reference vector
for_each_leaf_node(localView.tree(), [&](auto const& node, auto tp)
{
auto gf = makeGridFunction(funcs[k], globalBasis.gridView());
Dune::Functions::interpolate(globalBasis, tp, ref, gf);
AMDiS::interpolate(globalBasis, ref, gf, tp);
k++;
});
// compare the solution with the reference
double maxError = 0;
sol.forEach([&](auto dof, double coeff) {
double error = std::abs(ref[dof] - coeff);
double error = std::abs(ref.at(dof) - coeff);
maxError = std::max(maxError, error);
});
return maxError;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment