Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

RecoNu.h File Reference

#include <algorithm>
#include <cmath>
#include <iostream>
#include "Rtypes.h"
#include "PhysicsNtuple/DataItem.h"

Go to the source code of this file.

Namespaces

namespace  Anp
namespace  Anp::Reco

Classes

class  Anp::RecoNu

Enumerations

enum  Formula { kUnknown, kSUM, kQES, kRES }

Functions

bool operator== (short index, const RecoNu &rnu)
bool operator== (const RecoNu &rnu, short index)
bool operator== (const RecoNu &lhs, const RecoNu &rhs)
double RecoQ2 (const RecoNu &rnu, Reco::Formula formula)
double RecoW2 (const RecoNu &rnu, Reco::Formula formula)
double m_proton ()
double m_muon ()
double m_delta ()
double m_proton2 ()
double m_muon2 ()
double m_delta2 ()


Enumeration Type Documentation

enum Formula
 

Enumeration values:
kUnknown 
kSUM 
kQES 
kRES 

Definition at line 123 of file RecoNu.h.

00124       {
00125          kUnknown, kSUM, kQES, kRES
00126       };


Function Documentation

double m_delta  )  [inline]
 

Definition at line 134 of file RecoNu.h.

Referenced by Anp::m_delta2().

00134 { return 1.232; }

double m_delta2  )  [inline]
 

Definition at line 138 of file RecoNu.h.

References Anp::m_delta().

Referenced by Anp::RecoNu::ERES().

00138 { return Anp::m_delta()  * Anp::m_delta(); }

double m_muon  )  [inline]
 

Definition at line 133 of file RecoNu.h.

Referenced by Anp::m_muon2().

00133 { return 0.1056584; }

double m_muon2  )  [inline]
 

Definition at line 137 of file RecoNu.h.

References Anp::m_muon().

Referenced by Anp::RecoNu::ECur(), Anp::RecoNu::ELep(), Anp::RecoNu::EQES(), Anp::RecoNu::ERan(), Anp::RecoNu::ERES(), and Anp::RecoNu::SetELep().

00137 { return Anp::m_muon()   * Anp::m_muon(); }

double m_proton  )  [inline]
 

Definition at line 132 of file RecoNu.h.

Referenced by Anp::RecoNu::EQES(), Anp::RecoNu::ERES(), Anp::m_proton2(), Anp::RecoW2(), Anp::RecoNu::W2(), and Anp::RecoNu::X().

00132 { return 0.9382720; }

double m_proton2  )  [inline]
 

Definition at line 136 of file RecoNu.h.

References Anp::m_proton().

Referenced by Anp::RecoNu::EQES(), Anp::RecoW2(), and Anp::RecoNu::W2().

00136 { return Anp::m_proton() * Anp::m_proton(); }

bool Anp::operator== const RecoNu &  lhs,
const RecoNu &  rhs
[inline]
 

Definition at line 225 of file RecoNu.h.

References Anp::RecoNu::Index().

00226    {
00227       return (lhs.Index() == rhs.Index());
00228    }

bool Anp::operator== const RecoNu &  rnu,
short  index
[inline]
 

Definition at line 221 of file RecoNu.h.

References Anp::RecoNu::Index().

00222    {
00223       return (index == rnu.Index());
00224    }

bool Anp::operator== short  index,
const RecoNu &  rnu
[inline]
 

Definition at line 217 of file RecoNu.h.

References Anp::RecoNu::Index().

00218    {
00219       return (index == rnu.Index());
00220    }

double Anp::RecoQ2 const RecoNu &  rnu,
Reco::Formula  formula
 

Definition at line 188 of file RecoNu.cxx.

References Anp::RecoNu::CosN(), Anp::RecoNu::ELep(), Anp::RecoNu::ENeu(), Anp::RecoNu::EQES(), and Anp::RecoNu::ERES().

Referenced by Anp::RecoW2().

00189 {
00190    switch (formula)
00191    {
00192    case Reco::kSUM: return 2.0*rnu.ENeu()*rnu.ELep()*(1-rnu.CosN());
00193    case Reco::kQES: return 2.0*rnu.EQES()*rnu.ELep()*(1-rnu.CosN());
00194    case Reco::kRES: return 2.0*rnu.ERES()*rnu.ELep()*(1-rnu.CosN());
00195    default: break;
00196    }
00197 
00198    cerr << "Anp::RecoQ2 - uknown formula parameter: " << formula << endl;
00199    return 0.0;
00200 }

double Anp::RecoW2 const RecoNu &  rnu,
Reco::Formula  formula
 

Definition at line 203 of file RecoNu.cxx.

References Anp::RecoNu::EHad(), Anp::RecoNu::ELep(), Anp::RecoNu::EQES(), Anp::RecoNu::ERES(), Anp::m_proton(), Anp::m_proton2(), and Anp::RecoQ2().

00204 {
00205    double ehad = 0.0;
00206    switch (formula)
00207    {
00208       case Reco::kSUM:
00209       {
00210          ehad = rnu.EHad();
00211          break;
00212       }
00213       case Reco::kQES:
00214       {
00215          ehad = rnu.EQES() - rnu.ELep();
00216          break;
00217       }
00218       case Reco::kRES:
00219       {
00220          ehad = rnu.ERES() - rnu.ELep();
00221          break;
00222       }
00223       default:
00224       {
00225          cerr << "Anp::RecoQ2 - uknown formula parameter: " << formula << endl;
00226          return 0.0;
00227       }
00228    }
00229 
00230    if(ehad < 0.0) ehad = 0.0;
00231 
00232    return m_proton2() + 2.0*m_proton()*ehad + Anp::RecoQ2(rnu, formula);
00233 }


Generated on Mon Feb 15 11:08:10 2010 for loon by  doxygen 1.3.9.1