diff --git a/rod3d.cc b/rod3d.cc index 64edfae5846b16896933dab5b1cbf006a7e98a60..7626f6be119ab2b090b475c9593361c8bb7c168a 100644 --- a/rod3d.cc +++ b/rod3d.cc @@ -19,7 +19,7 @@ #include <dune/gfe/rodassembler.hh> #include <dune/gfe/riemanniantrsolver.hh> -typedef RigidBodyMotion<3> TargetSpace; +typedef RigidBodyMotion<double,3> TargetSpace; const int blocksize = TargetSpace::TangentVector::dimension; @@ -28,7 +28,7 @@ using std::string; int main (int argc, char *argv[]) try { - typedef std::vector<RigidBodyMotion<3> > SolutionType; + typedef std::vector<RigidBodyMotion<double,3> > SolutionType; // parse data file ParameterTree parameterSet; @@ -78,7 +78,7 @@ int main (int argc, char *argv[]) try x[i].r[0] = 0; x[i].r[1] = 0; x[i].r[2] = double(i)/(x.size()-1); - x[i].q = Rotation<3,double>::identity(); + x[i].q = Rotation<double,3>::identity(); } // ///////////////////////////////////////// @@ -94,7 +94,7 @@ int main (int argc, char *argv[]) try axis[2] = parameterSet.get<double>("dirichletAxisZ"); double angle = parameterSet.get<double>("dirichletAngle"); - x.back().q = Rotation<3,double>(axis, M_PI*angle/180); + x.back().q = Rotation<double,3>(axis, M_PI*angle/180); // backup for error measurement later SolutionType initialIterate = x; @@ -124,7 +124,7 @@ int main (int argc, char *argv[]) try RodAssembler<GridType::LeafGridView,3> rodAssembler(grid.leafView(), &localStiffness); - RiemannianTrustRegionSolver<GridType,RigidBodyMotion<3> > rodSolver; + RiemannianTrustRegionSolver<GridType,RigidBodyMotion<double,3> > rodSolver; #if 1 rodSolver.setup(grid, &rodAssembler, diff --git a/rodobstacle.cc b/rodobstacle.cc index a702030629305f1485c0e0fa3d5e110bd8a2b33f..07d8e88d7ed261771d6d27c31d8f8ded1e356f9a 100644 --- a/rodobstacle.cc +++ b/rodobstacle.cc @@ -71,7 +71,7 @@ int main (int argc, char *argv[]) try // Some types that I need typedef BCRSMatrix<FieldMatrix<double, blocksize, blocksize> > MatrixType; typedef BlockVector<FieldVector<double, blocksize> > CorrectionType; - typedef std::vector<RigidBodyMotion<2> > SolutionType; + typedef std::vector<RigidBodyMotion<double,2> > SolutionType; // parse data file ParameterTree parameterSet; @@ -155,7 +155,7 @@ int main (int argc, char *argv[]) try for (int i=0; i<x.size(); i++) { x[i].r[0] = 0; x[i].r[1] = i;//double(i)/(x.size()-1); - x[i].q = Rotation<2,double>::identity(); + x[i].q = Rotation<double,2>::identity(); } x.back().r[1] += 1; @@ -293,7 +293,7 @@ int main (int argc, char *argv[]) try SolutionType newIterate = x; for (int j=0; j<newIterate.size(); j++) - newIterate[j] = RigidBodyMotion<2>::exp(newIterate[j], corr[j]); + newIterate[j] = RigidBodyMotion<double,2>::exp(newIterate[j], corr[j]); /** \todo Don't always recompute oldEnergy */ double oldEnergy = rodAssembler.computeEnergy(x); @@ -304,7 +304,7 @@ int main (int argc, char *argv[]) try // Add correction to the current solution for (int j=0; j<x.size(); j++) - x[j] = RigidBodyMotion<2>::exp(x[j], corr[j]); + x[j] = RigidBodyMotion<double,2>::exp(x[j], corr[j]); // Subtract correction from the current obstacle for (int k=0; k<corr.size(); k++)