// File: SigCalc.h // Glen Cowan // RHUL Physics #ifndef SIGCALC_H #define SIGCALC_H #include #include #include using namespace std; class SigCalc { public: SigCalc (double n, double s, vector mVec, vector tauVec, vector S1Vec, vector S2Vec, int option); SigCalc (double s, vector tauVec, double mu, vector bVec, vector aVec, vector xiVec, TRandom3* ran, int option); double n() { return m_n; } double s() { return m_s; } double m(int i) { return m_m[i]; } double tau(int i) { return m_tau[i]; } double S1(int i) { return m_S1[i]; } double S2(int i) { return m_S2[i]; } int numBck(){ return m_numBck; } int option(){ return m_option; } double lnL(double mu, vector bVec, vector lambdaVec, vector sigmaVec); double lnLLogNorm(double mu, vector bVec, vector lambdaVec, vector sigmaVec); double lnLGauss(double mu, vector bVec, vector omegaVec, vector sigmaVec); double lnLGaussBhat(double mu, vector bVec); double lnLw1(double mu, vector bVec); double qmu(double mu, double& muHat, vector& bHat, vector& bHatHat, vector& lambdaHat, vector& lambdaHatHat, vector& sigmaHat, vector& sigmaHatHat); double qmu(double mu); double q0(double& muHat, vector& bHat, vector& bHatHat, vector& lambdaHat, vector& lambdaHatHat, vector& sigmaHat, vector& sigmaHatHat); double q0(); double psi(double, double); void setStartValues(vector& parVec, vector& freePar); private: int m_numBck; double m_n; double m_s; vector m_m; vector m_tau; vector m_S1; vector m_S2; int m_option; }; #endif