smallvectors.cpp File Reference
#include "main.h"

Functions

template<typename Scalar >
void smallVectors ()
 
 EIGEN_DECLARE_TEST (smallvectors)
 

Function Documentation

◆ EIGEN_DECLARE_TEST()

EIGEN_DECLARE_TEST ( smallvectors  )
40  {
41  for (int i = 0; i < g_repeat; i++) {
42  CALL_SUBTEST(smallVectors<int>());
43  CALL_SUBTEST(smallVectors<float>());
44  CALL_SUBTEST(smallVectors<double>());
45  }
46 }
int i
Definition: BiCGSTAB_step_by_step.cpp:9
#define CALL_SUBTEST(FUNC)
Definition: main.h:382
static int g_repeat
Definition: main.h:191

References CALL_SUBTEST, Eigen::g_repeat, and i.

◆ smallVectors()

template<typename Scalar >
void smallVectors ( )
13  {
14  typedef Matrix<Scalar, 1, 2> V2;
15  typedef Matrix<Scalar, 3, 1> V3;
16  typedef Matrix<Scalar, 1, 4> V4;
17  typedef Matrix<Scalar, Dynamic, 1> VX;
18  Scalar x1 = internal::random<Scalar>(), x2 = internal::random<Scalar>(), x3 = internal::random<Scalar>(),
19  x4 = internal::random<Scalar>();
20  V2 v2(x1, x2);
21  V3 v3(x1, x2, x3);
22  V4 v4(x1, x2, x3, x4);
23  VERIFY_IS_APPROX(x1, v2.x());
24  VERIFY_IS_APPROX(x1, v3.x());
25  VERIFY_IS_APPROX(x1, v4.x());
26  VERIFY_IS_APPROX(x2, v2.y());
27  VERIFY_IS_APPROX(x2, v3.y());
28  VERIFY_IS_APPROX(x2, v4.y());
29  VERIFY_IS_APPROX(x3, v3.z());
30  VERIFY_IS_APPROX(x3, v4.z());
31  VERIFY_IS_APPROX(x4, v4.w());
32 
33  VERIFY_RAISES_ASSERT(V3(2, 1))
34  VERIFY_RAISES_ASSERT(V3(3, 2))
35  VERIFY_RAISES_ASSERT(V4(1, 3))
36  VERIFY_RAISES_ASSERT(V4(2, 4))
37  VERIFY_RAISES_ASSERT(VX(3, 2))
38 }
Map< RowVectorXf > v2(M2.data(), M2.size())
SCALAR Scalar
Definition: bench_gemm.cpp:45
The matrix class, also used for vectors and row-vectors.
Definition: Eigen/Eigen/src/Core/Matrix.h:186
#define VERIFY_IS_APPROX(a, b)
Definition: integer_types.cpp:13
#define VERIFY_RAISES_ASSERT(a)
Definition: main.h:329
Vector< double > x1(const Vector< double > &coord)
Cartesian coordinates centered at the point (0.5,1)
Definition: poisson/poisson_with_singularity/two_d_poisson.cc:86
Vector< double > x2(const Vector< double > &coord)
Cartesian coordinates centered at the point (1.5,1)
Definition: poisson/poisson_with_singularity/two_d_poisson.cc:102

References v2(), VERIFY_IS_APPROX, VERIFY_RAISES_ASSERT, Global_parameters::x1(), and Global_parameters::x2().