Caffe2 - C++ API
A deep learning, cross platform ML framework
THVector.h
1 #ifndef TH_GENERIC_FILE
2 #define TH_GENERIC_FILE "TH/generic/THVector.h"
3 #else
4 
5 // Opaque C++ struct
6 struct THGenerator;
7 
8 TH_API void THVector_(fill)(scalar_t *x, const scalar_t c, const ptrdiff_t n);
9 
10 #if !defined(TH_REAL_IS_BOOL) /* non bool only part */
11 
12 TH_API void THVector_(cadd)(scalar_t *z, const scalar_t *x, const scalar_t *y, const scalar_t c, const ptrdiff_t n);
13 TH_API void THVector_(adds)(scalar_t *y, const scalar_t *x, const scalar_t c, const ptrdiff_t n);
14 TH_API void THVector_(cmul)(scalar_t *z, const scalar_t *x, const scalar_t *y, const ptrdiff_t n);
15 TH_API void THVector_(muls)(scalar_t *y, const scalar_t *x, const scalar_t c, const ptrdiff_t n);
16 TH_API void THVector_(cdiv)(scalar_t *z, const scalar_t *x, const scalar_t *y, const ptrdiff_t n);
17 TH_API void THVector_(divs)(scalar_t *y, const scalar_t *x, const scalar_t c, const ptrdiff_t n);
18 TH_API void THVector_(neg)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
19 TH_API void THVector_(normal_fill)(scalar_t *data,
20  const int64_t size,
21  struct THGenerator *generator,
22  const scalar_t mean,
23  const scalar_t stddev);
24 
25 #endif /* non bool only part */
26 
27 #if defined(TH_REAL_IS_SHORT) || defined(TH_REAL_IS_INT) || defined(TH_REAL_IS_LONG)
28 TH_API void THVector_(abs)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
29 #endif
30 
31 /* floating point only now */
32 #if defined(TH_REAL_IS_FLOAT) || defined(TH_REAL_IS_DOUBLE)
33 
34 TH_API void THVector_(log)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
35 TH_API void THVector_(lgamma)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
36 TH_API void THVector_(digamma)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
37 TH_API void THVector_(trigamma)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
38 TH_API void THVector_(log10)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
39 TH_API void THVector_(log1p)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
40 TH_API void THVector_(log2)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
41 TH_API void THVector_(sigmoid)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
42 TH_API void THVector_(exp)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
43 TH_API void THVector_(expm1)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
44 TH_API void THVector_(erf)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
45 TH_API void THVector_(erfc)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
46 TH_API void THVector_(erfinv)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
47 TH_API void THVector_(cos)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
48 TH_API void THVector_(acos)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
49 TH_API void THVector_(cosh)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
50 TH_API void THVector_(sin)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
51 TH_API void THVector_(asin)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
52 TH_API void THVector_(sinh)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
53 TH_API void THVector_(tan)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
54 TH_API void THVector_(atan)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
55 TH_API void THVector_(tanh)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
56 TH_API void THVector_(pow)(scalar_t *y, const scalar_t *x, const scalar_t c, const ptrdiff_t n);
57 TH_API void THVector_(sqrt)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
58 TH_API void THVector_(rsqrt)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
59 TH_API void THVector_(ceil)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
60 TH_API void THVector_(floor)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
61 TH_API void THVector_(round)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
62 TH_API void THVector_(abs)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
63 TH_API void THVector_(trunc)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
64 TH_API void THVector_(frac)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
65 TH_API void THVector_(cinv)(scalar_t *y, const scalar_t *x, const ptrdiff_t n);
66 
67 #endif /* floating point only part */
68 
69 #endif