diff --git a/test/Makefile.am b/test/Makefile.am index d11177b97a7d31685d75940215baee9e1ea1b489..8fdc5dc7aa8fd6e30a9e08fb00d1166256096c10 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -5,7 +5,7 @@ LDADD = $(UG_LDFLAGS) $(AMIRAMESH_LDFLAGS) $(UG_LIBS) $(AMIRAMESH_LIBS) AM_CPPFLAGS += $(UG_CPPFLAGS) $(AMIRAMESH_CPPFLAGS) -Wall check_PROGRAMS = frameinvariancetest rotationtest fdcheck localgeodesicfefunctiontest \ - harmonicenergytest averagedistanceassemblertest + harmonicenergytest averagedistanceassemblertest unitcircletest frameinvariancetest_SOURCES = frameinvariancetest.cc @@ -19,6 +19,8 @@ harmonicenergytest_SOURCES = harmonicenergytest.cc averagedistanceassemblertest_SOURCES = averagedistanceassemblertest.cc +unitcircletest_SOURCES = unitcircletest.cc + # don't follow the full GNU-standard # we need automake 1.5 AUTOMAKE_OPTIONS = foreign 1.5 diff --git a/test/unitcircletest.cc b/test/unitcircletest.cc new file mode 100644 index 0000000000000000000000000000000000000000..425f47797cbed3406f1f6084a0b3e3d748d43607 --- /dev/null +++ b/test/unitcircletest.cc @@ -0,0 +1,31 @@ +#include <config.h> + +#include <dune/src/unitvector.hh> +#include <dune/src/rotation.hh> + + +using namespace Dune; + +int main() +{ + // Set up elements of S^1 + FieldVector<double,2> v; + v[0] = 1; v[1] = 1; + UnitVector<2> uv1; uv1 = v; + v[0] = 0; v[1] = 1; + UnitVector<2> uv0; uv0 = v; + + // Set up elements of SO(2) + Rotation<2,double> ro1(M_PI/4); + Rotation<2,double> ro0(M_PI/2); + + std::cout << UnitVector<2>::distance(uv0, uv1) << std::endl; + std::cout << Rotation<2,double>::distance(ro0, ro1) << std::endl; + + std::cout << UnitVector<2>::derivativeOfDistanceSquaredWRTSecondArgument(uv0, uv1) << std::endl; + std::cout << Rotation<2,double>::derivativeOfDistanceSquaredWRTSecondArgument(ro0, ro1) << std::endl; + + std::cout << UnitVector<2>::secondDerivativeOfDistanceSquaredWRTSecondArgument(uv0, uv1) << std::endl; + std::cout << Rotation<2,double>::secondDerivativeOfDistanceSquaredWRTSecondArgument(ro0, ro1) << std::endl; +} +