Lines Matching refs:Scalar

27   typedef typename QuatType::Scalar Scalar;
28 typedef AngleAxis<Scalar> AA;
30 Scalar largeEps = test_precision<Scalar>();
32 Scalar theta_tot = AA(q1*q0.inverse()).angle();
34 theta_tot = Scalar(2.*M_PI)-theta_tot;
35 for(Scalar t=0; t<=Scalar(1.001); t+=Scalar(0.1))
38 Scalar theta = AA(q*q0.inverse()).angle();
45 template<typename Scalar, int Options> void quaternion(void)
51 typedef Matrix<Scalar,3,1> Vector3;
52 typedef Matrix<Scalar,4,1> Vector4;
53 typedef Quaternion<Scalar,Options> Quaternionx;
54 typedef AngleAxis<Scalar> AngleAxisx;
56 Scalar largeEps = test_precision<Scalar>();
57 if (internal::is_same<Scalar,float>::value)
60 Scalar eps = internal::random<Scalar>() * Scalar(1e-2);
67 Scalar a = internal::random<Scalar>(-Scalar(M_PI), Scalar(M_PI)),
68 b = internal::random<Scalar>(-Scalar(M_PI), Scalar(M_PI));
84 Scalar refangle = abs(AngleAxisx(q1.inverse()*q2).angle());
85 if (refangle>Scalar(M_PI))
86 refangle = Scalar(2)*Scalar(M_PI) - refangle;
90 VERIFY_IS_MUCH_SMALLER_THAN(abs(q1.angularDistance(q2) - refangle), Scalar(1));
111 if (abs(aa.angle()) > 5*test_precision<Scalar>()
122 if (internal::is_same<Scalar,double>::value)
133 if (internal::is_same<Scalar,double>::value)
146 VERIFY_IS_APPROX(q1f.template cast<Scalar>(),q1);
148 VERIFY_IS_APPROX(q1d.template cast<Scalar>(),q1);
159 q2 = AngleAxisx(b+Scalar(M_PI), v1.normalized());
171 template<typename Scalar> void mapQuaternion(void){
172 typedef Map<Quaternion<Scalar>, Aligned> MQuaternionA;
173 typedef Map<const Quaternion<Scalar>, Aligned> MCQuaternionA;
174 typedef Map<Quaternion<Scalar> > MQuaternionUA;
175 typedef Map<const Quaternion<Scalar> > MCQuaternionUA;
176 typedef Quaternion<Scalar> Quaternionx;
177 typedef Matrix<Scalar,3,1> Vector3;
178 typedef AngleAxis<Scalar> AngleAxisx;
182 Scalar a = internal::random<Scalar>(-Scalar(M_PI), Scalar(M_PI));
184 EIGEN_ALIGN16 Scalar array1[4];
185 EIGEN_ALIGN16 Scalar array2[4];
186 EIGEN_ALIGN16 Scalar array3[4+1];
187 Scalar* array3unaligned = array3+1;
209 if(internal::packet_traits<Scalar>::Vectorizable)
231 template<typename Scalar> void quaternionAlignment(void){
232 typedef Quaternion<Scalar,AutoAlign> QuaternionA;
233 typedef Quaternion<Scalar,DontAlign> QuaternionUA;
235 EIGEN_ALIGN16 Scalar array1[4];
236 EIGEN_ALIGN16 Scalar array2[4];
237 EIGEN_ALIGN16 Scalar array3[4+1];
238 Scalar* arrayunaligned = array3+1;
251 if(internal::packet_traits<Scalar>::Vectorizable)