template<typename Result, typename Left, typename Right, bool LeftConsumable, bool RightConsumable>
class TiledArray::detail::Add< Result, Left, Right, LeftConsumable, RightConsumable >
Tile addition operation.
This addition operation will add the content two tiles, and accepts an optional permute argument.
- Template Parameters
-
Result | The result tile type |
Left | The left-hand argument type |
Right | The right-hand argument type |
LeftConsumable | If true , the left-hand tile is a temporary and may be consumed |
RightConsumable | If true , the right-hand tile is a temporary and may be consumed |
- Note
- Input tiles can be consumed only if their type matches the result type.
Definition at line 54 of file add.h.
template<typename Result , typename Left , typename Right , bool LeftConsumable, bool RightConsumable>
template<typename R >
Add right to left.
Add the right tile to the left. The right tile may be replaced with ZeroTensor
argument, in which case the argument's element values are assumed to be 0
.
- Template Parameters
-
R | The right-hand tile argument type |
- Parameters
-
left | The left-hand tile argument |
right | The right-hand tile argument |
- Returns
- The sum of
left
and right
.
Definition at line 189 of file add.h.
template<typename Result , typename Left , typename Right , bool LeftConsumable, bool RightConsumable>
template<typename L >
Add left to right.
Add the left tile to the right. The left tile may be replaced with ZeroTensor
argument, in which case the argument's element values are assumed to be 0
.
- Template Parameters
-
L | The left-hand tile argument type |
- Parameters
-
left | The left-hand tile argument |
right | The right-hand tile argument |
- Returns
- The sum of
left
and right
.
Definition at line 209 of file add.h.
template<typename Result , typename Left , typename Right , bool LeftConsumable, bool RightConsumable>
template<typename L , typename R >
Add operator.
Compute the sum of two tiles. One of the argument tiles may be replaced with ZeroTensor
argument, in which case the argument's element values are assumed to be 0
.
- Template Parameters
-
L | The left-hand tile argument type |
R | The right-hand tile argument type |
- Parameters
-
left | The left-hand tile argument |
right | The right-hand tile argument |
- Returns
- The scaled sum of
left
and right
.
Definition at line 174 of file add.h.
template<typename Result , typename Left , typename Right , bool LeftConsumable, bool RightConsumable>
template<typename L , typename R , typename Perm , typename = std::enable_if_t<TiledArray::detail::is_permutation_v<Perm>>>
Add-and-permute operator.
Compute the sum of two tiles and permute the result. One of the argument tiles may be replaced with ZeroTensor
argument, in which case the argument's element values are assumed to be 0
.
- Template Parameters
-
L | The left-hand tile argument type |
R | The right-hand tile argument type |
- Parameters
-
left | The left-hand tile argument |
right | The right-hand tile argument |
perm | The permutation applied to the result tile |
- Returns
- The permuted and scaled sum of
left
and right
.
Definition at line 159 of file add.h.
template<typename Result , typename Left , typename Right , bool LeftConsumable, bool RightConsumable>
Initial value:=
LeftConsumable && std::is_same<result_type, left_type>::value
Indicates whether it is possible to consume the left tile.
Definition at line 63 of file add.h.
template<typename Result , typename Left , typename Right , bool LeftConsumable, bool RightConsumable>
constexpr bool TiledArray::detail::Add< Result, Left, Right, LeftConsumable, RightConsumable >::right_is_consumable |
|
staticconstexpr |
Initial value:=
RightConsumable && std::is_same<result_type, right_type>::value
Indicates whether it is possible to consume the right tile.
Definition at line 66 of file add.h.