Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
src
uni20
tensor_network
site_types.hpp
Go to the documentation of this file.
1
7
#pragma once
8
9
#include <
uni20/symmetry/block_tensor.hpp
>
10
#include <
uni20/symmetry/dual_space.hpp
>
11
12
namespace
uni20::tensor_network
13
{
14
16
template
<
typename
Scalar,
class
LeftBond,
class
Physical,
class
RightBond,
17
BlockTensorStorage Storage = SeparateSparseBlockStorage<>>
18
using
MpsSite
=
BlockTensor<Scalar, Domain<LeftBond, Physical>
,
Codomain<RightBond>
, Storage>;
19
21
template
<
typename
Scalar
,
class
LeftAuxiliary,
class
InputPhysical,
class
RightAuxiliary,
class
OutputPhysical,
22
BlockTensorStorage
Storage =
SeparateSparseBlockStorage<>
>
23
using
MpoSite
=
24
BlockTensor<Scalar, Domain<LeftAuxiliary, InputPhysical>
,
Codomain<RightAuxiliary, OutputPhysical>
, Storage>;
25
27
template
<
typename
Scalar
,
class
BraBond,
class
Auxiliary,
class
KetBond,
28
BlockTensorStorage
Storage =
SeparateSparseBlockStorage<>
>
29
using
MpoEnvironment
=
BlockTensor<Scalar, Domain<BraBond, Auxiliary>
,
Codomain<KetBond>
, Storage>;
30
32
template
<
typename
Scalar
,
class
LeftBond,
class
LeftPhysical,
class
RightPhysical,
class
RightBond,
33
BlockTensorStorage
Storage =
SeparateSparseBlockStorage<>
>
34
using
TwoSiteCenter
=
BlockTensor<Scalar, Domain<LeftBond, LeftPhysical, RightPhysical>
,
Codomain<RightBond>
, Storage>;
35
37
template
<
typename
Scalar
,
class
LeftPhysical,
class
RightPhysical,
38
BlockTensorStorage
Storage =
PackedSparseBlockStorage<>
>
39
using
TwoSiteLocalOperator
=
BlockTensor<Scalar, Domain<Dual<LeftPhysical>
,
Dual<RightPhysical>
>,
40
Codomain<Dual<LeftPhysical>
,
Dual<RightPhysical>
>, Storage>;
41
43
template
<
typename
Scalar, BlockTensorStorage Storage = SeparateSparseBlockStorage<>>
44
using
ScalarEnvironment
=
BlockTensor<Scalar, Domain<>
,
Codomain<>
, Storage>;
45
46
}
// namespace uni20::tensor_network
block_tensor.hpp
Defines the first bosonic abelian BlockTensor container.
uni20::BlockTensor
Fixed-order tensor whose blocks obey a bosonic abelian selection rule.
Definition
block_tensor.hpp:161
uni20::Codomain
Ordered codomain spaces of a tensor morphism.
Definition
morphism_boundary.hpp:78
uni20::Dual
Tensor space represented in an explicitly dual basis.
Definition
dual_space.hpp:89
uni20::BlockTensorStorage
Storage policy for a BlockTensor container.
Definition
block_tensor_storage.hpp:46
uni20::Scalar
Concept for numeric scalar types (integer, real, or complex).
Definition
scalar_concepts.hpp:81
dual_space.hpp
Defines the generic categorical dual-space adaptor.
uni20::tensor_network
Definition
right_first_rabc.hpp:34
uni20::PackedSparseBlockStorage
Sparse storage packing every stored dense block into one leaf buffer.
Definition
block_tensor_storage.hpp:959
uni20::SeparateSparseBlockStorage
Sparse storage with one independently owning dense Tensor per stored block.
Definition
block_tensor_storage.hpp:913
Generated by
1.9.8