◆ appendComponent()
bool exatn::numerics::TensorOperator::appendComponent |
( |
std::shared_ptr< TensorNetwork > |
network, |
|
|
const std::vector< std::pair< unsigned int, unsigned int >> & |
ket_pairing, |
|
|
const std::vector< std::pair< unsigned int, unsigned int >> & |
bra_pairing, |
|
|
const std::complex< double > |
coefficient |
|
) |
| |
Appends a new component to the tensor operator linear expansion. The new component can either be a tensor network or just a single tensor expressed as a tensor network of size 1. The ket and bra pairing arguments specify which legs of the network output tensor act on a ket vector and which on a bra vector, together with their mapping onto the global modes of the tensor space the tensor operator is supposed to act upon.
◆ conjugate()
void exatn::numerics::TensorOperator::conjugate |
( |
| ) |
|
Conjugates the tensor operator: All constituting tensors are complex conjugated, all tensor legs reverse their direction, bra legs and ket legs are swapped, complex linear expansion coefficients are complex conjugated.
◆ getComponent()
const OperatorComponent& exatn::numerics::TensorOperator::getComponent |
( |
std::size_t |
component_num | ) |
|
|
inline |
Returns a specific component of the tensor operator.
◆ getName()
const std::string& exatn::numerics::TensorOperator::getName |
( |
| ) |
const |
|
inline |
Returns the name of the tensor network operator.
◆ getNumComponents()
std::size_t exatn::numerics::TensorOperator::getNumComponents |
( |
| ) |
const |
|
inline |
Returns the total number of components in the tensor operator.
◆ getRank()
int exatn::numerics::TensorOperator::getRank |
( |
| ) |
const |
|
inline |
Returns the rank of the tensor operator (number of legs per component). If the expansion is empty, returns -1.
◆ printIt()
void exatn::numerics::TensorOperator::printIt |
( |
| ) |
const |
The documentation for this class was generated from the following files:
- /Users/aqw/exatn/src/numerics/tensor_operator.hpp
- /Users/aqw/exatn/src/numerics/tensor_operator.cpp