Merged in tntnatbry/eigen (pull request PR-319)

Tensor Trace op
This commit is contained in:
Benoit Steiner
2017-07-07 04:18:03 +00:00
parent 6795512e59
commit 9daed67952
7 changed files with 526 additions and 0 deletions

View File

@@ -671,6 +671,18 @@ class TensorBase<Derived, ReadOnlyAccessors>
return TensorReductionOp<Reducer, const Dims, const Derived>(derived(), dims, reducer);
}
template <typename Dims> EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
const TensorTraceOp<const Dims, const Derived>
trace(const Dims& dims) const {
return TensorTraceOp<const Dims, const Derived>(derived(), dims);
}
const TensorTraceOp<const DimensionList<Index, NumDimensions>, const Derived>
trace() const {
DimensionList<Index, NumDimensions> in_dims;
return TensorTraceOp<const DimensionList<Index, NumDimensions>, const Derived>(derived(), in_dims);
}
template <typename Broadcast> EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
const TensorBroadcastingOp<const Broadcast, const Derived>
broadcast(const Broadcast& broadcast) const {