cxx11_tensor_math.cpp File Reference
#include "main.h"
#include <Eigen/CXX11/Tensor>

Functions

static void test_tanh ()
 
static void test_sigmoid ()
 
 EIGEN_DECLARE_TEST (cxx11_tensor_math)
 

Function Documentation

◆ EIGEN_DECLARE_TEST()

EIGEN_DECLARE_TEST ( cxx11_tensor_math  )
39  {
42 }
static void test_sigmoid()
Definition: cxx11_tensor_math.cpp:28
static void test_tanh()
Definition: cxx11_tensor_math.cpp:17
#define CALL_SUBTEST(FUNC)
Definition: main.h:382

References CALL_SUBTEST, test_sigmoid(), and test_tanh().

◆ test_sigmoid()

static void test_sigmoid ( )
static
28  {
30  vec1.setRandom();
31 
32  Tensor<float, 1> vec2 = vec1.sigmoid();
33 
34  for (int i = 0; i < 6; ++i) {
35  VERIFY_IS_APPROX(vec2(i), 1.0f / (1.0f + std::exp(-vec1(i))));
36  }
37 }
int i
Definition: BiCGSTAB_step_by_step.cpp:9
RowVectorXd vec1(3)
The tensor class.
Definition: Tensor.h:68
#define VERIFY_IS_APPROX(a, b)
Definition: integer_types.cpp:13
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 exp(const bfloat16 &a)
Definition: BFloat16.h:615

References Eigen::bfloat16_impl::exp(), i, vec1(), and VERIFY_IS_APPROX.

Referenced by EIGEN_DECLARE_TEST().

◆ test_tanh()

static void test_tanh ( )
static
17  {
19  vec1.setRandom();
20 
21  Tensor<float, 1> vec2 = vec1.tanh();
22 
23  for (int i = 0; i < 6; ++i) {
24  VERIFY_IS_APPROX(vec2(i), tanhf(vec1(i)));
25  }
26 }

References i, vec1(), and VERIFY_IS_APPROX.

Referenced by EIGEN_DECLARE_TEST().