Tobias Wood
d49021212b
Tensor Roll / Circular Shift / Rotate
2024-11-05 14:10:19 +00:00
Rasmus Munk Larsen
9148c47d67
Vectorize isfinite and isinf.
2024-05-29 00:20:12 +00:00
Antonio Sánchez
9f77ce4f19
Add custom formatting of complex numbers for Numpy/Native.
2024-03-25 17:41:44 +00:00
Antonio Sánchez
a9ddab3e06
Fix a bunch of ODR violations.
2024-01-30 22:38:43 +00:00
Tobias Wood
05a457534f
Chipping Asserts v2
2024-01-22 18:08:23 +00:00
Antonio Sánchez
772057c558
Revert "Add asserts for .chip"
2024-01-20 05:14:42 +00:00
Tobias Wood
b1ae206ea6
Add asserts for .chip
2024-01-19 19:18:19 +00:00
Antonio Sánchez
6e4d5d4832
Add IWYU private pragmas to internal headers.
2023-08-21 16:25:22 +00:00
Rasmus Munk Larsen
0488b708b4
Vectorize tensor.isnan() by using typed predicates.
2023-03-16 04:04:22 +00:00
Charles Schlosser
049a144798
Add typed logicals
2023-02-18 01:23:47 +00:00
Mehdi Goli
b523120687
[SYCL-2020 Support] Enabling Intel DPCPP Compiler support to Eigen
2023-01-16 07:04:08 +00:00
chuckyschluz
8acbf5c11c
re-enable pow for complex types
2022-08-26 17:29:02 -04:00
Charles Schlosser
76a669fb45
add fixed power unary operation
2022-08-16 21:32:36 +00:00
Antonio Sánchez
8c2e0e3cb8
Fix ambiguous comparisons for c++20 (again again)
2022-06-07 17:06:17 +00:00
Antonio Sánchez
76cf6204f3
Revert "Fix c++20 ambiguity of comparisons."
...
This reverts commit 4f6354128f
2022-06-04 02:32:10 +00:00
Antonio Sánchez
4f6354128f
Fix c++20 ambiguity of comparisons.
2022-06-03 05:11:07 +00:00
Antonio Sánchez
477eb7f630
Revert "Avoid ambiguous Tensor comparison operators for C++20 compatibility"
...
This reverts commit 5c2179b6c3
2022-05-24 16:09:59 +00:00
Benjamin Kramer
5c2179b6c3
Avoid ambiguous Tensor comparison operators for C++20 compatibility
2022-05-23 17:36:03 +00:00
Tobias Wood
a9868bd5be
Add arg() to tensor
2022-05-20 03:33:01 +00:00
Erik Schultheis
64909b82bd
static const class members turned into constexpr
2022-04-04 17:33:33 +00:00
Erik Schultheis
421cbf0866
Replace Eigen type metaprogramming with corresponding std types and make use of alias templates
2022-03-16 16:43:40 +00:00
Erik Schultheis
ec2fd0f7ed
Require recent GCC and MSCV and removed EIGEN_HAS_CXX14 and some other feature test macros
2021-12-01 00:48:34 +00:00
cpp977
f73c95c032
Reimplemented the Tensor stream output.
2021-11-16 17:36:58 +00:00
Rasmus Munk Larsen
d7d0bf832d
Issue an error in case of direct inclusion of internal headers.
2021-09-10 19:12:26 +00:00
Antonio Sanchez
74da2e6821
Rename Tuple -> Pair.
...
This is to make way for a new `Tuple` class that mimics `std::tuple`,
but can be reliably used on device and with aligned Eigen types.
The existing Tuple has very few references, and is actually an
analogue of `std::pair`.
2021-09-02 02:20:54 +00:00
Turing Eret
3324389f6d
Add EIGEN_TENSOR_PLUGIN support per issue #2052 .
2021-08-30 19:36:55 +00:00
Eugene Zhulenev
a6601070f2
Add log2 operation to TensorBase
2021-03-04 00:13:36 +00:00
Antonio Sanchez
3669498f5a
Fix rule-of-3 for the Tensor module.
...
Adds copy constructors to Tensor ops, inherits assignment operators from
`TensorBase`.
Addresses #1863
2020-11-18 18:14:53 +00:00
Rasmus Munk Larsen
c6953f799b
Add packet generic ops predux_fmin, predux_fmin_nan, predux_fmax, and predux_fmax_nan that implement reductions with PropagateNaN, and PropagateNumbers semantics. Add (slow) generic implementations for most reductions.
2020-10-13 21:48:31 +00:00
Rasmus Munk Larsen
b431024404
Don't make assumptions about NaN-propagation for pmin/pmax - it various across platforms.
...
Change test to only test for NaN-propagation for pfmin/pfmax.
2020-10-07 19:05:18 +00:00
Ilya Tokar
19876ced76
Bug #1785 : Introduce numext::rint.
...
This provides a new op that matches std::rint and previous behavior of
pround. Also adds corresponding unsupported/../Tensor op.
Performance is the same as e. g. floor (tested SSE/AVX).
2020-01-07 21:22:44 +00:00
Rasmus Munk Larsen
97c0c5d485
Add block evaluation V2 to TensorAsyncExecutor.
...
Add async evaluation to a number of ops.
2019-10-22 12:42:44 -07:00
Srinivas Vasudevan
df0816b71f
Merging eigen/eigen.
2019-09-16 19:33:29 -04:00
Srinivas Vasudevan
6e215cf109
Add Bessel functions to SpecialFunctions.
...
- Split SpecialFunctions files in to a separate BesselFunctions file.
In particular add:
- Modified bessel functions of the second kind k0, k1, k0e, k1e
- Bessel functions of the first kind j0, j1
- Bessel functions of the second kind y0, y1
2019-09-14 12:16:47 -04:00
Srinivas Vasudevan
e38dd48a27
PR 681: Add ndtri function, the inverse of the normal distribution function.
2019-08-12 19:26:29 -04:00
Eugene Zhulenev
47fefa235f
Allow move-only done callback in TensorAsyncDevice
2019-09-03 17:20:56 -07:00
Eugene Zhulenev
66665e7e76
Asynchronous expression evaluation with TensorAsyncDevice
2019-08-30 14:49:40 -07:00
Rasmus Munk Larsen
cf4a1c81fa
Fix specialization for conjugate on non-complex types in TensorBase.h.
2019-03-01 14:21:09 -08:00
Eugene Zhulenev
106ba7bb1a
Do not generate no-op cast() and conjugate() expressions
2019-02-14 09:51:51 -08:00
Christoph Hertzberg
3f2c8b7ff0
Fix a lot of Doxygen warnings in Tensor module
2018-10-09 20:22:47 +02:00
Gael Guennebaud
3ec60215df
Merged in rmlarsen/eigen2 (pull request PR-466)
...
Move sigmoid functor to core and rename it to 'logistic'.
2018-08-13 21:28:20 +00:00
Rasmus Munk Larsen
0f1b2e08a5
Call logistic functor from Tensor::sigmoid.
2018-08-13 11:52:58 -07:00
Benoit Steiner
d011d05fd6
Fixed compilation errors.
2018-08-06 13:40:51 -07:00
Eugene Zhulenev
01fd4096d3
Fuse computations into the Tensor contractions using output kernel
2018-07-10 13:16:38 -07:00
Michael Figurnov
30fa3d0454
Merge from eigen/eigen
2018-06-07 17:57:56 +01:00
Gael Guennebaud
b3fd93207b
Fix typos found using codespell
2018-06-07 14:43:02 +02:00
Michael Figurnov
4bd158fa37
Derivative of the incomplete Gamma function and the sample of a Gamma random variable.
...
In addition to igamma(a, x), this code implements:
* igamma_der_a(a, x) = d igamma(a, x) / da -- derivative of igamma with respect to the parameter
* gamma_sample_der_alpha(alpha, sample) -- reparameterization derivative of a Gamma(alpha, 1) random variable sample with respect to the alpha parameter
The derivatives are computed by forward mode differentiation of the igamma(a, x) code. Although gamma_sample_der_alpha can be implemented via igamma_der_a, a separate function is more accurate and efficient due to analytical cancellation of some terms. All three functions are implemented by a method parameterized with "mode" that always computes the derivatives, but does not return them unless required by the mode. The compiler is expected to (and, based on benchmarks, does) skip the unnecessary computations depending on the mode.
2018-06-06 18:49:26 +01:00
Michael Figurnov
f216854453
Exponentially scaled modified Bessel functions of order zero and one.
...
The functions are conventionally called i0e and i1e. The exponentially scaled version is more numerically stable. The standard Bessel functions can be obtained as i0(x) = exp(|x|) i0e(x)
The code is ported from Cephes and tested against SciPy.
2018-05-31 15:34:53 +01:00
Rasmus Munk Larsen
b8d36774fa
Rename clip2 to clamp.
2018-05-16 14:04:48 -07:00
Rasmus Munk Larsen
812480baa3
Rename scalar_clip_op to scalar_clip2_op to prevent collision with existing functor in TensorFlow.
2018-05-16 09:49:24 -07:00