Skip to content
Snippets Groups Projects
Commit 8852bc43 authored by Oliver Sander's avatar Oliver Sander Committed by sander@FU-BERLIN.DE
Browse files

do not use a LocalGFEFunction for the interpolation. It is not working properly yet

[[Imported from SVN: r6833]]
parent fb5ac1cf
No related branches found
No related tags found
No related merge requests found
...@@ -80,16 +80,6 @@ template <int dim> ...@@ -80,16 +80,6 @@ template <int dim>
max = std::max(max, vIt->geometry().corner(0)[0]); max = std::max(max, vIt->geometry().corner(0)[0]);
} }
////////////////////////////////////////////////////////////////////////////////////
// Make a 1d geodesic finite element function, which will do the interpolation
////////////////////////////////////////////////////////////////////////////////////
std::vector<RigidBodyMotion<3> > coefficients(2);
coefficients[0] = beginning;
coefficients[1] = end;
LocalGeodesicFEFunction<1,double,RigidBodyMotion<3> > localGFEFunction(coefficients);
//////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////
// Interpolate according to arc-length // Interpolate according to arc-length
//////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////
...@@ -99,7 +89,10 @@ template <int dim> ...@@ -99,7 +89,10 @@ template <int dim>
for (vIt = gridView_.template begin<dim>(); vIt != vEndIt; ++vIt) { for (vIt = gridView_.template begin<dim>(); vIt != vEndIt; ++vIt) {
int idx = gridView_.indexSet().index(*vIt); int idx = gridView_.indexSet().index(*vIt);
Dune::FieldVector<double,1> local = (vIt->geometry().corner(0)[0] - min) / (max - min); Dune::FieldVector<double,1> local = (vIt->geometry().corner(0)[0] - min) / (max - min);
rod[idx] = localGFEFunction.evaluate(local);
for (int i=0; i<3; i++)
rod[idx].r[i] = (1-local)*beginning.r[i] + local*end.r[i];
rod[idx].q = Rotation<3,double>::interpolate(beginning.q, end.q, local);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment