File DP-propagator.hpp๏
-
namespace nuTens๏
-
class DPpropagator : public nuTens::Propagator
- #include <DP-propagator.hpp>
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.
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}.
-
inline virtual void setBaseline(float newBaseline) override
-
class DPpropagator : public nuTens::Propagator