File base-matter-solver.hpp๏ƒ

namespace nuTens
class BaseMatterSolver

Subclassed by nuTens::ConstDensityMatterSolver

Setters

inline virtual BaseMatterSolver &setMixingMatrix(const Tensor &newMatrix)

Set a new mixing matrix for this solver.

Parameters:

newMatrix โ€“ The new matrix to set

inline virtual BaseMatterSolver &setMasses(const Tensor &newMasses)

Set new mass eigenvalues for this solver.

Parameters:

newMasses โ€“ The new masses

inline virtual BaseMatterSolver &setEnergies(const Tensor &newEnergies)

set new neutrino energies

Parameters:

newEnergies โ€“ new energy values

inline virtual BaseMatterSolver &setAntiNeutrino(bool newValue)

Set whether we are dealing with anti-neutrinos.

Parameters:

newValue โ€“

Unnamed Group

inline virtual const Tensor &getMixingMatrix()

getters

Get the current mixing matrix for this solver

inline virtual const Tensor &getMasses()

Get the current mass eigenvalues for this solver.

inline virtual const Tensor &getEnergies()
inline virtual bool getAntiNeutrino()

Get whether we are dealing with anti-neutrinos.

Public Functions

inline BaseMatterSolver(int nGenerations, bool antiNeutrino, dtypes::deviceType device)
virtual ~BaseMatterSolver() = default

Destructor.

BaseMatterSolver(BaseMatterSolver const&) = default

copy constructor

BaseMatterSolver &operator=(BaseMatterSolver const&) = default

copy assignment operator

BaseMatterSolver(BaseMatterSolver&&) = default

move constructor

BaseMatterSolver &operator=(BaseMatterSolver&&) = default

move assignment operator

virtual void calculateEigenvalues(EigenvecTensor &eigenvectors, EigenvalTensor &eigenvalues) = 0

Protected Attributes

bool antiNeutrino๏ƒ
int nGenerations๏ƒ
dtypes::deviceType _device๏ƒ
Tensor energies๏ƒ
Tensor hamiltonian๏ƒ
Tensor mixingMatrix๏ƒ
Tensor masses๏ƒ
struct EigenvalTensor : public nuTens::Tensor

Public Functions

EigenvalTensor() = default
inline explicit EigenvalTensor(const nuTens::Tensor &tensor)
struct EigenvecTensor : public nuTens::Tensor

Public Functions

EigenvecTensor() = default
inline explicit EigenvecTensor(const nuTens::Tensor &tensor)