OscProb
PMNS_Iter.h
Go to the documentation of this file.
1
27
28#ifndef PMNS_Iter_H
29#define PMNS_Iter_H
30
31#include "PMNS_Fast.h"
32
33namespace OscProb {
34
35 class PMNS_Iter : public PMNS_Fast {
36 public:
37 PMNS_Iter();
38 virtual ~PMNS_Iter();
39
41 virtual void SetPrec(double prec);
42
43 virtual void SetIsNuBar(bool isNuBar);
44
45 protected:
47 virtual void SolveHam();
48
50 virtual void PropMatter();
51
53 virtual void SetExpVL(NuPath p);
54
56 virtual void PropagatePath(NuPath p);
57
59 double fPrec;
60
61 double fVL;
63
65 };
66
67} // namespace OscProb
68
69#endif
70
Implementation of oscillations of neutrinos in matter in a three-neutrino framework.
Definition: PMNS_Fast.h:40
Implementation of oscillations of neutrinos in matter in a three-neutrino framework.
Definition: PMNS_Iter.h:35
virtual void SolveHam()
Just use the vacuum to start.
Definition: PMNS_Iter.cxx:68
complexD fExpVL
Matter phase shift.
Definition: PMNS_Iter.h:62
virtual void PropMatter()
Propagate through matter part.
Definition: PMNS_Iter.cxx:62
virtual ~PMNS_Iter()
Destructor.
Definition: PMNS_Iter.cxx:25
PMNS_Iter()
Constructor.
Definition: PMNS_Iter.cxx:19
virtual void SetExpVL(NuPath p)
Set the matter propagation term.
Definition: PMNS_Iter.cxx:47
double fPrec
Iterative precision.
Definition: PMNS_Iter.h:59
virtual void PropagatePath(NuPath p)
Reimplement propagation.
Definition: PMNS_Iter.cxx:103
double fVL
Matter potential.
Definition: PMNS_Iter.h:61
virtual void SetIsNuBar(bool isNuBar)
Set the anti-neutrino flag.
Definition: PMNS_Iter.cxx:35
virtual void SetPrec(double prec)
Set the iterative precision.
Definition: PMNS_Iter.cxx:93
double fPrevEnergy
Definition: PMNS_Iter.h:64
Some useful general definitions.
Definition: Absorption.h:6
std::complex< double > complexD
Definition: Definitions.h:21
A struct representing a neutrino path segment.
Definition: NuPath.h:34