diff --git a/test/filmonsubstratetest.cc b/test/filmonsubstratetest.cc index fb2e7210a4571ec75625d345fee3cdf0a8239c4b..8ac10888fae14408c1058a9955716f850dad3141 100644 --- a/test/filmonsubstratetest.cc +++ b/test/filmonsubstratetest.cc @@ -36,6 +36,7 @@ #include <dune/functions/functionspacebases/interpolate.hh> #include <dune/functions/functionspacebases/lagrangebasis.hh> #include <dune/functions/gridfunctions/discreteglobalbasisfunction.hh> +#include <dune/functions/gridfunctions/gridviewfunction.hh> #include <dune/functions/functionspacebases/compositebasis.hh> #include <dune/functions/functionspacebases/powerbasis.hh> @@ -288,23 +289,13 @@ int main (int argc, char *argv[]) ///////////////////////////////////////////////////////////// // STRESS-FREE SURFACE SHELL DATA ///////////////////////////////////////////////////////////// - auto stressFreeFEBasis = makeBasis( - gridView, - power<dim>( - lagrange<stressFreeDataOrder>(), - blockedInterleaved() - )); - - GlobalIndexSet<GridView> globalVertexIndexSet(gridView,dim); - BlockVector<FieldVector<double,dim> > stressFreeShellVector(stressFreeFEBasis.size()); - // Read grid deformation from deformation function + // The configuration in which the film is stress-free auto gridDeformation = [](FieldVector<double,dim> x){ return x; }; - Functions::interpolate(stressFreeFEBasis, stressFreeShellVector, gridDeformation); - auto stressFreeShellFunction = Dune::Functions::makeDiscreteGlobalBasisFunction<FieldVector<double,dim> >(stressFreeFEBasis, stressFreeShellVector); + auto stressFreeShellFunction = Functions::makeGridViewFunction(gridDeformation,gridView); ///////////////////////////////////////////////////////////// // MAIN HOMOTOPY LOOP