minor fixes and optimsiation
This commit is contained in:
parent
f8764de7e1
commit
b2332bbea0
2
BM1D.cc
2
BM1D.cc
|
@ -45,7 +45,7 @@ int main(int argc, char* argv[])
|
||||||
//todo fix parameters
|
//todo fix parameters
|
||||||
percent = 0.99;
|
percent = 0.99;
|
||||||
nGenerated = 7000;
|
nGenerated = 7000;
|
||||||
nop = 43;
|
nop = 30;
|
||||||
|
|
||||||
j_mu1=-25;
|
j_mu1=-25;
|
||||||
j_sigma1=0.3;
|
j_sigma1=0.3;
|
||||||
|
|
|
@ -11,8 +11,10 @@
|
||||||
class Crusher
|
class Crusher
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Crusher(std::vector<Double_t> tp, std::vector<Double_t> xp, double p0p);
|
Crusher(const std::vector<Double_t> & tp, const std::vector<Double_t> & xp, double p0p);
|
||||||
Crusher(std::vector<Double_t> tp, std::vector<Double_t> xp);
|
Crusher(const std::vector<Double_t> & tp, const std::vector<Double_t> & xp);
|
||||||
|
|
||||||
|
|
||||||
~Crusher();
|
~Crusher();
|
||||||
|
|
||||||
bool RunMachine(const int & nRunsm, const MuSigma & parameters);
|
bool RunMachine(const int & nRunsm, const MuSigma & parameters);
|
||||||
|
@ -23,13 +25,14 @@ class Crusher
|
||||||
private:
|
private:
|
||||||
int nSteps;
|
int nSteps;
|
||||||
double p0;
|
double p0;
|
||||||
std::vector<Double_t> t;
|
double BiggerLimit;
|
||||||
std::vector<Double_t> x;
|
std::vector<Double_t> t;
|
||||||
|
std::vector<Double_t> x;
|
||||||
|
|
||||||
BM1DProcess *myBM1DProcess;
|
BM1DProcess *myBM1DProcess;
|
||||||
Analyse *myAnalyse;
|
Analyse *myAnalyse;
|
||||||
|
|
||||||
bool Bigger(double percent);
|
inline bool Bigger();
|
||||||
|
|
||||||
std::vector<Double_t> multipleRunVectorT;
|
std::vector<Double_t> multipleRunVectorT;
|
||||||
std::vector<Double_t> multipleRunVectorX;
|
std::vector<Double_t> multipleRunVectorX;
|
||||||
|
|
|
@ -28,7 +28,7 @@ class Draw2DWorkerThread
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Draw2DWorkerThread(int jobOffset_, int jobSize_, std::vector<Double_t> x_, std::vector<Double_t> t_, int nRuns_, Lattice *myLattice_, TH2D *BM1D_histo_, TH2D *BM1D_histo2_, struct graphArray graphArray_, pthread_mutex_t *histoMutex_);
|
Draw2DWorkerThread(int jobOffset_, int jobSize_, const std::vector<Double_t> & x_, const std::vector<Double_t> & t_, int nRuns_, Lattice *myLattice_, TH2D *BM1D_histo_, TH2D *BM1D_histo2_, struct graphArray graphArray_, pthread_mutex_t *histoMutex_);
|
||||||
|
|
||||||
~Draw2DWorkerThread();
|
~Draw2DWorkerThread();
|
||||||
|
|
||||||
|
@ -45,8 +45,8 @@ private:
|
||||||
|
|
||||||
int nRuns; //Chrusher parameter number of tested "kukac"
|
int nRuns; //Chrusher parameter number of tested "kukac"
|
||||||
|
|
||||||
std::vector<Double_t> t; //original "kukac"
|
//std::vector<Double_t> t; //original "kukac"
|
||||||
std::vector<Double_t> x;
|
//std::vector<Double_t> x;
|
||||||
|
|
||||||
Crusher *myCrusher;
|
Crusher *myCrusher;
|
||||||
|
|
||||||
|
|
2
setup.sh
2
setup.sh
|
@ -3,6 +3,6 @@
|
||||||
rm -rf ../bm1d_build
|
rm -rf ../bm1d_build
|
||||||
mkdir ../bm1d_build
|
mkdir ../bm1d_build
|
||||||
cd ../bm1d_build
|
cd ../bm1d_build
|
||||||
cmake ../BM1D
|
cmake -DCMAKE_BUILD_TYPE=Release ../BM1D
|
||||||
make
|
make
|
||||||
echo Setup complete.
|
echo Setup complete.
|
||||||
|
|
|
@ -1,23 +1,30 @@
|
||||||
#include "Crusher.hh"
|
#include "Crusher.hh"
|
||||||
|
|
||||||
Crusher::Crusher(std::vector<Double_t> tp, std::vector<Double_t> xp, double p0p)
|
Crusher::Crusher(const std::vector<Double_t> & tp, const std::vector<Double_t> & xp, double p0p)
|
||||||
{
|
{
|
||||||
nSteps = tp.size();
|
|
||||||
t = tp;
|
t = tp;
|
||||||
x = xp;
|
x = xp;
|
||||||
p0 = p0p;
|
p0 = p0p;
|
||||||
|
|
||||||
myBM1DProcess = new BM1DProcess();
|
nSteps = t.size();
|
||||||
|
|
||||||
|
const double percent = 0.5;
|
||||||
|
BiggerLimit = nSteps * percent;
|
||||||
|
|
||||||
|
myBM1DProcess = new BM1DProcess();
|
||||||
}
|
}
|
||||||
|
|
||||||
Crusher::Crusher(std::vector<Double_t> tp, std::vector<Double_t> xp)
|
Crusher::Crusher(const std::vector<Double_t> & tp, const std::vector<Double_t> & xp)
|
||||||
{
|
{
|
||||||
nSteps = tp.size();
|
|
||||||
t = tp;
|
t = tp;
|
||||||
x = xp;
|
x = xp;
|
||||||
p0 = 0.5;
|
p0 = 0.5;
|
||||||
|
|
||||||
|
nSteps = t.size();
|
||||||
|
|
||||||
|
const double percent = 0.5;
|
||||||
|
BiggerLimit = nSteps * percent;
|
||||||
|
|
||||||
myBM1DProcess = new BM1DProcess();
|
myBM1DProcess = new BM1DProcess();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,22 +33,23 @@ Crusher::~Crusher()
|
||||||
delete myBM1DProcess;
|
delete myBM1DProcess;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Crusher::Bigger(double percent)
|
inline bool Crusher::Bigger()
|
||||||
{
|
{
|
||||||
int counterBig = 0;
|
int counterBig = 0;
|
||||||
double limit = nSteps * percent;
|
//double limit = nSteps * percent;
|
||||||
|
const std::vector<Double_t> & refx = myBM1DProcess -> GetX();
|
||||||
|
|
||||||
for(int i = 0; i < nSteps; i++)
|
for(int i = 0; i < nSteps; i++)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(myBM1DProcess -> GetX()[i] < x[i]) // reference < origin
|
if(refx[i] < x[i]) // reference < origin
|
||||||
{
|
{
|
||||||
counterBig ++;
|
counterBig ++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(counterBig >= limit)
|
if(counterBig >= BiggerLimit)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -71,7 +79,7 @@ bool Crusher::RunMachine(const int & nRuns, const MuSigma & parameters)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(Bigger(0.5))
|
if(Bigger())
|
||||||
{
|
{
|
||||||
counter ++;
|
counter ++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,8 +27,8 @@ Draw2D::Draw2D(int nop, double percent, int nRunsp, std::vector<Double_t> tp, st
|
||||||
BM1D_histo2 = new TH2D("BM1D_histo2", "BM1D_histo2", myLattice -> GetWidth() , myLattice -> GetMuMin(), (myLattice -> GetMuMax()) , myLattice -> GetHeight() , myLattice -> GetSigmaMin(), (myLattice -> GetSigmaMax()) );
|
BM1D_histo2 = new TH2D("BM1D_histo2", "BM1D_histo2", myLattice -> GetWidth() , myLattice -> GetMuMin(), (myLattice -> GetMuMax()) , myLattice -> GetHeight() , myLattice -> GetSigmaMin(), (myLattice -> GetSigmaMax()) );
|
||||||
|
|
||||||
graphArray.size = myLattice -> GetLatticeSize();
|
graphArray.size = myLattice -> GetLatticeSize();
|
||||||
graphArray.X = new double[graphArray.size];
|
graphArray.X = new double[graphArray.size] {};
|
||||||
graphArray.Y = new double[graphArray.size];
|
graphArray.Y = new double[graphArray.size] {};
|
||||||
|
|
||||||
gr = new TGraph(graphArray.size);
|
gr = new TGraph(graphArray.size);
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
#include "Draw2DWorkerThread.hh"
|
#include "Draw2DWorkerThread.hh"
|
||||||
|
|
||||||
Draw2DWorkerThread::Draw2DWorkerThread(int jobOffset_, int jobSize_, std::vector<Double_t> x_, std::vector<Double_t> t_, int nRuns_, Lattice *myLattice_, TH2D *BM1D_histo_, TH2D *BM1D_histo2_, struct graphArray graphArray_, pthread_mutex_t *histoMutex_)
|
Draw2DWorkerThread::Draw2DWorkerThread(int jobOffset_, int jobSize_, const std::vector<Double_t> & x_, const std::vector<Double_t> & t_, int nRuns_, Lattice *myLattice_, TH2D *BM1D_histo_, TH2D *BM1D_histo2_, struct graphArray graphArray_, pthread_mutex_t *histoMutex_)
|
||||||
{
|
{
|
||||||
std::cout << "Draw2DWorkerThread::Draw2DWorkerThread" <<std::endl;
|
std::cout << "Draw2DWorkerThread::Draw2DWorkerThread" <<std::endl;
|
||||||
//copy to private variables
|
//copy to private variables
|
||||||
x = x_;
|
//x = x_;
|
||||||
t = t_;
|
//t = t_;
|
||||||
|
|
||||||
myLattice = myLattice_;
|
myLattice = myLattice_;
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ Draw2DWorkerThread::Draw2DWorkerThread(int jobOffset_, int jobSize_, std::vector
|
||||||
jobSize = jobSize_;
|
jobSize = jobSize_;
|
||||||
|
|
||||||
//create Crusher instance
|
//create Crusher instance
|
||||||
myCrusher = new Crusher(t,x);
|
myCrusher = new Crusher(t_, x_);
|
||||||
|
|
||||||
//calculate lattice parameters TODO rework lattice class!!
|
//calculate lattice parameters TODO rework lattice class!!
|
||||||
XbinSize = (myLattice -> GetMuMax() - myLattice -> GetMuMin())/ myLattice -> GetWidth() ;
|
XbinSize = (myLattice -> GetMuMax() - myLattice -> GetMuMin())/ myLattice -> GetWidth() ;
|
||||||
|
@ -63,5 +63,5 @@ void Draw2DWorkerThread::WorkerFunction()
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pthread_exit((void*) 0); //kell?? vagy NULL??
|
pthread_exit((void*) 0);
|
||||||
}
|
}
|
Loading…
Reference in New Issue