35 template<
class tensor_type>
36 class IndexedTensorWritable :
public IndexedTensorReadOnly<tensor_type> {
58 IndexedTensorWritable(tensor_type*
const _tensorObject,
const std::vector<Index>& _indices,
const bool _takeOwnership);
61 IndexedTensorWritable(tensor_type*
const _tensorObject, std::vector<Index>&& _indices,
const bool _takeOwnership);
void indexed_plus_equal(IndexedTensorReadOnly< tensor_type > &&_rhs)
Tensor add_assignment with indices.
void indexed_assignement(IndexedTensorReadOnly< Tensor > &&_rhs)
Tensor assignment with indices.
Header file for the IndexedTensorReadOnly class.
Internal representation of an readable indexed Tensor or TensorNetwork.
The main namespace of xerus.
void indexed_minus_equal(IndexedTensorReadOnly< tensor_type > &&_rhs)
Tensor subtract_assignment with indices.
void perform_traces()
: Performes all traces induces by the current indices and therby also evaluates all fixed indices...
virtual ~IndexedTensorWritable()
void evaluate(IndexedTensorWritable< Tensor > &&_out, IndexedTensorReadOnly< Tensor > &&_base)
bool is_owner() const
Check whether the IndexedTensorWritable has ownership of the tensor object.
tensor_type * tensorObject
Non-const pointer to the tensor object.
bool deleteTensorObject
Flag indicating, whether the IndexedTensorWritable is the owner of the tensorObject.
Abstract internal representation of an read and writeable indexed Tensor or TensorNetwork.
IndexedTensorWritable()=delete
There is no usefull default constructor;.