Hammer
1.0.0
Helicity Amplitude Module for Matrix Element Reweighting
|
#include <OuterContainer.hh>
Public Types | |
using | iterator = DataType::iterator |
using | const_iterator = DataType::const_iterator |
Public Types inherited from Hammer::MultiDimensional::IContainer | |
using | ElementType = std::complex< double > |
using | reference = ElementType & |
using | const_reference = const ElementType & |
using | SerialType = std::pair< flatbuffers::Offset< void >, Serial::FBTensorTypes > |
Public Member Functions | |
OuterContainer (TensorData left, TensorData right) | |
OuterContainer (TensorData toBeSquared, bool conjugate=true) | |
OuterContainer (std::vector< TensorData > &&group) | |
OuterContainer (EntryType &&data) | |
OuterContainer (SharedTensorData toBeSquared, bool conjugate=true) | |
OuterContainer (const Serial::FBTensorList *input) | |
OuterContainer (const OuterContainer &other) | |
OuterContainer & | operator= (const OuterContainer &other) |
OuterContainer (OuterContainer &&other)=default | |
OuterContainer & | operator= (OuterContainer &&other)=default |
~OuterContainer () override=default | |
ElementType | value (const IndexList &indices) const |
ElementType | value (IndexList::const_iterator first, IndexList::const_iterator last) const |
ElementType | value (const std::vector< IndexList > &indices) const |
size_t | numAddends () const |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
size_t | rank () const override |
IndexList | dims () const override |
LabelsList | labels () const override |
size_t | numValues () const override |
size_t | dataSize () const override |
size_t | entrySize () const override |
IndexType | labelToIndex (IndexLabel label) const override |
IndexPairList | getSameLabelPairs (const IContainer &other, const UniqueLabelsList &indices) const override |
IndexPairList | getSpinLabelPairs () const override |
bool | isSameShape (const IContainer &other) const override |
bool | canAddAt (const IContainer &subContainer, IndexLabel coord, IndexType position) const override |
reference | element (const IndexList &coords={}) override |
ElementType | element (const IndexList &coords={}) const override |
reference | element (IndexList::const_iterator start, IndexList::const_iterator end) override |
ElementType | element (IndexList::const_iterator start, IndexList::const_iterator end) const override |
bool | compare (const IContainer &other) const override |
TensorData | clone () const override |
void | clear () override |
IContainer & | operator*= (double value) override |
IContainer & | operator*= (const ElementType value) override |
IContainer & | conjugate () override |
SerialType | write (flatbuffers::FlatBufferBuilder *msgwriter) const override |
Public Member Functions inherited from Hammer::MultiDimensional::IContainer | |
virtual | ~IContainer () |
IContainer () | |
IContainer (const IContainer &)=default | |
IContainer (IContainer &&)=default | |
IContainer & | operator= (const IContainer &)=default |
IContainer & | operator= (IContainer &&)=default |
Protected Member Functions | |
Log & | getLog () const |
logging facility More... | |
std::set< IContainer * > | getUniquePtrs (bool decoupleConjugates=false) |
std::set< IContainer * > | getUniquePtrs (size_t pos, bool decoupleConjugates=false) |
void | swapElement (IContainer *oldContainer, TensorData newContainer) |
bool | shouldBeEvaluated () const |
Private Types | |
using | EntryType = OuterElemIterator::EntryType |
using | DataType = std::vector< EntryType > |
Private Member Functions | |
OuterContainer () | |
const BlockIndexing & | getIndexing () const |
void | swap (DataType values) |
void | swapIndexing (BlockIndexing values) |
void | reserve (size_t numTerms) |
void | addTerm (std::vector< std::pair< SharedTensorData, bool >> tensorsAndConjFlags) |
bool | isDataShared () const |
bool | isOuterSquare () const |
Private Attributes | |
DataType | _data |
BlockIndexing | _indexing |
bool | _sharedData |
std::vector< std::function < ElementType(const IndexList &, IContainer *)> > | _accessors |
Friends | |
class | Ops::Sum |
class | Ops::Multiply |
class | Ops::Divide |
class | Ops::OuterSquare |
class | Ops::Dot |
class | Ops::Optimize |
class | Ops::Trace |
class | Ops::Convert |
Definition at line 49 of file OuterContainer.hh.
using Hammer::MultiDimensional::OuterContainer::const_iterator = DataType::const_iterator |
Definition at line 82 of file OuterContainer.hh.
|
private |
Definition at line 52 of file OuterContainer.hh.
Definition at line 51 of file OuterContainer.hh.
using Hammer::MultiDimensional::OuterContainer::iterator = DataType::iterator |
Definition at line 81 of file OuterContainer.hh.
|
private |
Definition at line 35 of file OuterContainer.cc.
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | TensorData | left, |
TensorData | right | ||
) |
Definition at line 72 of file OuterContainer.cc.
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | TensorData | toBeSquared, |
bool | conjugate = true |
||
) |
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | std::vector< TensorData > && | group | ) |
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | EntryType && | data | ) |
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | SharedTensorData | toBeSquared, |
bool | conjugate = true |
||
) |
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | const Serial::FBTensorList * | input | ) |
Hammer::MultiDimensional::OuterContainer::OuterContainer | ( | const OuterContainer & | other | ) |
Definition at line 37 of file OuterContainer.cc.
|
default |
|
overridedefault |
|
private |
iterator Hammer::MultiDimensional::OuterContainer::begin | ( | ) |
const_iterator Hammer::MultiDimensional::OuterContainer::begin | ( | ) | const |
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
iterator Hammer::MultiDimensional::OuterContainer::end | ( | ) |
const_iterator Hammer::MultiDimensional::OuterContainer::end | ( | ) | const |
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
private |
|
protected |
logging facility
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
protected |
|
protected |
|
private |
|
private |
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
size_t Hammer::MultiDimensional::OuterContainer::numAddends | ( | ) | const |
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
OuterContainer & Hammer::MultiDimensional::OuterContainer::operator= | ( | const OuterContainer & | other | ) |
Definition at line 54 of file OuterContainer.cc.
|
default |
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
private |
|
protected |
|
private |
|
protected |
|
private |
ElementType Hammer::MultiDimensional::OuterContainer::value | ( | const IndexList & | indices | ) | const |
ElementType Hammer::MultiDimensional::OuterContainer::value | ( | IndexList::const_iterator | first, |
IndexList::const_iterator | last | ||
) | const |
ElementType Hammer::MultiDimensional::OuterContainer::value | ( | const std::vector< IndexList > & | indices | ) | const |
|
overridevirtual |
Implements Hammer::MultiDimensional::IContainer.
|
friend |
Definition at line 147 of file OuterContainer.hh.
|
friend |
Definition at line 142 of file OuterContainer.hh.
|
friend |
Definition at line 144 of file OuterContainer.hh.
|
friend |
Definition at line 141 of file OuterContainer.hh.
|
friend |
Definition at line 145 of file OuterContainer.hh.
|
friend |
Definition at line 143 of file OuterContainer.hh.
|
friend |
Definition at line 140 of file OuterContainer.hh.
|
friend |
Definition at line 146 of file OuterContainer.hh.
|
private |
Definition at line 162 of file OuterContainer.hh.
|
mutableprivate |
Definition at line 159 of file OuterContainer.hh.
|
private |
Definition at line 160 of file OuterContainer.hh.
|
private |
Definition at line 161 of file OuterContainer.hh.