Class nuTens::DPpropagator๏ƒ

class DPpropagator : public nuTens::Propagator๏ƒ

Solver based on Denton, Parke (2024) (https://arxiv.org/pdf/2405.02400) assumes 3 flavour oscillations and dm^2_21 > 0.

Unnamed Group

inline virtual void setBaseline(float newBaseline) override๏ƒ

Setters.

inline void setDensity(float newDensity)๏ƒ
inline void setTheta12(Tensor &newTheta12)๏ƒ
inline void setTheta23(Tensor &newTheta23)๏ƒ
inline void setTheta13(Tensor &newTheta13)๏ƒ
inline void setDeltaCP(Tensor &newDeltaCP)๏ƒ
inline void setDmsp21(Tensor &newDmsq21)๏ƒ
inline void setDmsq31(Tensor &newDmsq31)๏ƒ
inline void setParameters(Tensor &newTheta12, Tensor &newTheta23, Tensor &newTheta13, Tensor &newDeltaCP, Tensor &newDmsq21, Tensor &newDmsq31)๏ƒ
inline virtual void setEnergies(Tensor &newEnergies) override๏ƒ

Set the neutrino energies.

Parameters:

newEnergies โ€“ The neutrino energies

Unnamed Group

inline const Tensor &getTheta12()๏ƒ

Getters.

inline const Tensor &getTheta23()๏ƒ
inline const Tensor &getTheta13()๏ƒ
inline const Tensor &getDeltaCP()๏ƒ
inline const Tensor &getDmsp21()๏ƒ
inline const Tensor &getDmsq31()๏ƒ
inline const Tensor &getEnergies()๏ƒ

Public Functions

inline DPpropagator(float baseline, bool antiNeutrino, float density, int NRiterations)๏ƒ
virtual Tensor calculateProbs()๏ƒ

Calculate the oscilaltion probabilities for the current set of parameters and energies.

template<typename T = bool>
inline virtual void setMatterSolver(const std::shared_ptr<BaseMatterSolver> &newSolver)๏ƒ

Set a matter solver to use to deal with matter effects.

Warning

Should be called before setMixingMatrix and setMasses

Parameters:

newSolver โ€“ A derivative of BaseMatterSolver

template<typename T = bool>
inline virtual void setMixingMatrix(Tensor &newMatrix)๏ƒ

Set a whole new mixing matrix.

Parameters:

newMatrix โ€“ The new matrix to use

template<typename T = bool>
inline virtual void setMasses(Tensor &newMasses)๏ƒ

Set the masses corresponding to the vacuum hamiltonian eigenstates.

Parameters:

newMasses โ€“ The new masses to use. This tensor is expected to have a batch dimension + 1 more dimensions of size nGenerations. The batch dimension can (and probably should) be 1 and it will be broadcast to match the batch dimension of the energies supplied to calculateProbs(). So dimension should be {1, nGenerations}.