File base-mixing-matrix.hpp

namespace nuTens
class BaseMixingMatrix

Subclassed by nuTens::PMNSmatrix

Public Functions

inline virtual Tensor &build()

Get the mixing matrix.

inline BaseMixingMatrix(dtypes::deviceType device = dtypes::kCPU)

Constructor.

virtual ~BaseMixingMatrix() = default

Destructor.

BaseMixingMatrix(BaseMixingMatrix const&) = default

copy constructor

BaseMixingMatrix &operator=(BaseMixingMatrix const&) = default

copy assignment operator

BaseMixingMatrix(BaseMixingMatrix&&) = default

move constructor

BaseMixingMatrix &operator=(BaseMixingMatrix&&) = default

move assignment operator

Protected Functions

virtual Tensor _build() = 0

Should construct and return the mixing matrix.

Protected Attributes

bool _needsRecalculating = true

flag to set if the matrix needs to be recalculated or if it’s fine to just return the cached one

dtypes::deviceType _device

The device that this object lives on.

Tensor _matrix

Cached mixing matrix.