From b39b761e2118ee9951878aec5689924c5f95aa65 Mon Sep 17 00:00:00 2001 From: Oliver Sander <oliver.sander@tu-dresden.de> Date: Thu, 16 May 2019 16:25:55 +0200 Subject: [PATCH] Modernize the code in interillustration.cc a bit --- test/interillustration.cc | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/test/interillustration.cc b/test/interillustration.cc index fdddd9e0..0e05bd18 100644 --- a/test/interillustration.cc +++ b/test/interillustration.cc @@ -8,7 +8,7 @@ #include <dune/localfunctions/lagrange/p2.hh> #include <dune/functions/functionspacebases/lagrangebasis.hh> -#include <dune/functions/gridfunctions/discretescalarglobalbasisfunction.hh> +#include <dune/functions/gridfunctions/discreteglobalbasisfunction.hh> #include <dune/gfe/unitvector.hh> #include <dune/gfe/localgeodesicfefunction.hh> @@ -79,11 +79,9 @@ void interpolate(const LocalFEFunctionType& localGeodesicFEFunction, factory.insertVertex({1,0}); factory.insertVertex({0,1}); - GeometryType triangle; - triangle.makeTriangle(); - factory.insertElement(triangle, {0,1,2}); + factory.insertElement(GeometryTypes::triangle, {0,1,2}); - shared_ptr<GridType> grid = shared_ptr<GridType>(factory.createGrid()); + shared_ptr<GridType> grid = factory.createGrid(); grid->globalRefine(3); @@ -146,16 +144,14 @@ void interpolate(const LocalFEFunctionType& localGeodesicFEFunction, typedef Functions::LagrangeBasis<typename DeformedGridType::LeafGridView, 1> FEBasis; FEBasis feBasis(deformedGrid.leafGridView()); - Functions::DiscreteScalarGlobalBasisFunction<decltype(feBasis),decltype(variation0)> variation0Function(feBasis,variation0); - Functions::DiscreteScalarGlobalBasisFunction<decltype(feBasis),decltype(variation1)> variation1Function(feBasis,variation1); - auto localVariation0Function = localFunction(variation0Function); - auto localVariation1Function = localFunction(variation1Function); + auto variation0Function = Functions::makeDiscreteGlobalBasisFunction<typename TargetSpace::EmbeddedTangentVector>(feBasis, variation0); + auto variation1Function = Functions::makeDiscreteGlobalBasisFunction<typename TargetSpace::EmbeddedTangentVector>(feBasis, variation1); Dune::VTKWriter<typename DeformedGridType::LeafGridView> vtkWriter(deformedGrid.leafGridView()); vtkWriter.addCellData(colors, "colors"); - vtkWriter.addVertexData(localVariation0Function, VTK::FieldInfo("variation 0", VTK::FieldInfo::Type::scalar, variation0[0].size())); - vtkWriter.addVertexData(localVariation1Function, VTK::FieldInfo("variation 1", VTK::FieldInfo::Type::scalar, variation1[0].size())); + vtkWriter.addVertexData(variation0Function, VTK::FieldInfo("variation 0", VTK::FieldInfo::Type::scalar, variation0[0].size())); + vtkWriter.addVertexData(variation1Function, VTK::FieldInfo("variation 1", VTK::FieldInfo::Type::scalar, variation1[0].size())); vtkWriter.write("sphere-patch-" + nameSuffix); } @@ -211,8 +207,8 @@ int main(int argc, char* argv[]) try //interpolate<TargetSpace,LocalProjectedFEFunctionType>(coefficients, "projected"); //interpolate<TargetSpace,LocalTangentFEFunctionType>(coefficients, "tangent"); -} catch (Exception e) { +} catch (Exception& e) { - std::cout << e << std::endl; + std::cout << e.what() << std::endl; } -- GitLab