Version 1.4 - New structure
This commit is contained in:
		
							parent
							
								
									4adbdad44b
								
							
						
					
					
						commit
						fc790d0de7
					
				
							
								
								
									
										83
									
								
								BM1D.cc
								
								
								
								
							
							
						
						
									
										83
									
								
								BM1D.cc
								
								
								
								
							| 
						 | 
					@ -1,81 +1,20 @@
 | 
				
			||||||
/// BM1D program. Date: 2017-10-29 Creators: Balázs Demeter, Balázs Ujvári, Dávid Baranyai
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include <iostream>
 | 
					#include <iostream>
 | 
				
			||||||
#include "Progress.hh"
 | 
					#include "BM1DProcess.hh"
 | 
				
			||||||
 | 
					#include "Plotter.hh"
 | 
				
			||||||
#include "TApplication.h"
 | 
					#include "TApplication.h"
 | 
				
			||||||
#include "TGraph.h"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
using namespace std;
 | 
					using namespace std;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenRootFile()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
		TFile *fIn = TFile::Open("Plot1.root", "READ");
 | 
					 | 
				
			||||||
		fIn->ls();
 | 
					 | 
				
			||||||
		TGraph *Ga;
 | 
					 | 
				
			||||||
		TGraph *Gb;
 | 
					 | 
				
			||||||
		fIn->GetObject("1", Ga);
 | 
					 | 
				
			||||||
		fIn->GetObject("2", Gb);
 | 
					 | 
				
			||||||
		Ga->Draw();
 | 
					 | 
				
			||||||
		Gb->Draw("same");
 | 
					 | 
				
			||||||
		delete fIn;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int main(int argc, char* argv[])
 | 
					int main(int argc, char* argv[])
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	Int_t n = 1000, p0 = 1, start = 0;
 | 
					  TApplication App("tapp", &argc, argv);
 | 
				
			||||||
	
 | 
					  Int_t n = 1000;
 | 
				
			||||||
	TApplication App("tapp", &argc, argv);
 | 
					  BM1DProcess *myBM1DProcess = new BM1DProcess(n);
 | 
				
			||||||
	TCanvas* Canv = new TCanvas("c10","Live display",800,400);
 | 
					  myBM1DProcess->Init();
 | 
				
			||||||
	
 | 
					  myBM1DProcess->Run();
 | 
				
			||||||
	if(argc==2)
 | 
					  Plotter* myPlotter = new Plotter();
 | 
				
			||||||
	{
 | 
					  myPlotter->Plot(n, myBM1DProcess->GetT(), myBM1DProcess->GetX());
 | 
				
			||||||
		OpenRootFile();
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	else
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		Progress* Pr1 = new Progress(n,p0,start);
 | 
					 | 
				
			||||||
		Progress* Pr2 = new Progress(n,p0,start);
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		Pr1->Count('u');
 | 
					 | 
				
			||||||
		Pr2->Count('g');
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		vector<Double_t> x1 = Pr1->GetX();
 | 
					 | 
				
			||||||
		vector<Double_t> y1 = Pr1->GetY();
 | 
					 | 
				
			||||||
		vector<Double_t> x2 = Pr2->GetX();
 | 
					 | 
				
			||||||
		vector<Double_t> y2 = Pr2->GetY();
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		TGraph* G1 = new TGraph(n,&x1[0],&y1[0]);
 | 
					 | 
				
			||||||
		TGraph* G2 = new TGraph(n,&x2[0],&y2[0]);
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		TFile* fOut = new TFile("Plot1.root", "RECREATE");
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		G1->SetLineColor(1);
 | 
					 | 
				
			||||||
		G1->SetLineWidth(1);
 | 
					 | 
				
			||||||
		G1->SetMarkerColor(1);
 | 
					 | 
				
			||||||
		G1->SetMarkerStyle(0);
 | 
					 | 
				
			||||||
		G1->SetTitle("Brownian Movement D=1");
 | 
					 | 
				
			||||||
		G1->GetXaxis()->SetTitle("X");
 | 
					 | 
				
			||||||
		G1->GetYaxis()->SetTitle("Time");
 | 
					 | 
				
			||||||
		G2->SetLineColor(2);
 | 
					 | 
				
			||||||
		G2->SetLineWidth(1);
 | 
					 | 
				
			||||||
		G2->SetMarkerColor(2);
 | 
					 | 
				
			||||||
		G2->SetMarkerStyle(0);
 | 
					 | 
				
			||||||
		G2->SetTitle("Brownian Movement D=1");
 | 
					 | 
				
			||||||
		G2->GetXaxis()->SetTitle("X");
 | 
					 | 
				
			||||||
		G2->GetYaxis()->SetTitle("Time");
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		G1->Draw();
 | 
					 | 
				
			||||||
		G2->Draw("same");
 | 
					 | 
				
			||||||
		G1->Write("1");
 | 
					 | 
				
			||||||
		G2->Write("2");
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		fOut->Close();
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	App.Run();
 | 
					 | 
				
			||||||
	return 0;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  App.Run();
 | 
				
			||||||
 | 
					  return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -51,6 +51,8 @@ If there's command line argument, then program opens the created root file. Name
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Updates
 | 
					## Updates
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* 2017/10/30 - 'v1.4' - New Structure
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* 2017/10/29 - 'v1.3.1' - Release Candidate
 | 
					* 2017/10/29 - 'v1.3.1' - Release Candidate
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* 2017/10/29 - 'v1.3' - Minor fixes in Progress
 | 
					* 2017/10/29 - 'v1.3' - Minor fixes in Progress
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,35 @@
 | 
				
			||||||
 | 
					#ifndef BM1DProcess_h
 | 
				
			||||||
 | 
					#define BM1DProcess_h 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <iostream>
 | 
				
			||||||
 | 
					#include <string>
 | 
				
			||||||
 | 
					#include <fstream>
 | 
				
			||||||
 | 
					#include <cmath>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "TRandom.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class BM1DProcess {
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
					  BM1DProcess(Int_t n); //n is the number of steps
 | 
				
			||||||
 | 
					  ~BM1DProcess();
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  void SetP0(Double_t p0_new){p0 = p0_new;}
 | 
				
			||||||
 | 
					  void SetP1(Double_t p1_new){p1 = p1_new;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  void Init();
 | 
				
			||||||
 | 
					  void Run();
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  std::vector<Double_t> GetT(){return t;}
 | 
				
			||||||
 | 
					  std::vector<Double_t> GetX(){return x;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 private:
 | 
				
			||||||
 | 
					  Int_t nSteps;
 | 
				
			||||||
 | 
					  Double_t p0,p1,p2,p3,p4;
 | 
				
			||||||
 | 
					  TRandom* randomGenerator;
 | 
				
			||||||
 | 
					  Double_t rand1;
 | 
				
			||||||
 | 
					  std::vector<Double_t> t;
 | 
				
			||||||
 | 
					  std::vector<Double_t> x;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					#endif  
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,32 @@
 | 
				
			||||||
 | 
					#ifndef Plotter_h
 | 
				
			||||||
 | 
					#define Plotter_h 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <iostream>
 | 
				
			||||||
 | 
					#include <string>
 | 
				
			||||||
 | 
					#include <fstream>
 | 
				
			||||||
 | 
					#include <cmath>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "TROOT.h"
 | 
				
			||||||
 | 
					#include "TF1.h"
 | 
				
			||||||
 | 
					#include "TH1.h"
 | 
				
			||||||
 | 
					#include "TH2.h"
 | 
				
			||||||
 | 
					#include "TH3.h"
 | 
				
			||||||
 | 
					#include "TNtuple.h"
 | 
				
			||||||
 | 
					#include "TFile.h"
 | 
				
			||||||
 | 
					#include "TMath.h"
 | 
				
			||||||
 | 
					#include "TCanvas.h"
 | 
				
			||||||
 | 
					#include "TGraph.h"
 | 
				
			||||||
 | 
					#include "TTree.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Plotter {
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
					  Plotter();
 | 
				
			||||||
 | 
					  void Plot(Int_t n, std::vector<Double_t> t, std::vector<Double_t> x);
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
					  TGraph* g1;
 | 
				
			||||||
 | 
					  TFile* fOut;
 | 
				
			||||||
 | 
					  TCanvas* canv;
 | 
				
			||||||
 | 
					  TTree *BM1DTree;
 | 
				
			||||||
 | 
					  Double_t tl,xl;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
| 
						 | 
					@ -1,58 +0,0 @@
 | 
				
			||||||
/// BM1D program. Date: 2017-10-29 Creators: Balázs Demeter, Balázs Ujvári, Dávid Baranyai
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#ifndef Progress_h
 | 
					 | 
				
			||||||
#define Progress_h 1
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include <iostream>
 | 
					 | 
				
			||||||
#include <string>
 | 
					 | 
				
			||||||
#include <fstream>
 | 
					 | 
				
			||||||
#include <cmath>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "TROOT.h"
 | 
					 | 
				
			||||||
#include "TF1.h"
 | 
					 | 
				
			||||||
#include "TH1.h"
 | 
					 | 
				
			||||||
#include "TH2.h"
 | 
					 | 
				
			||||||
#include "TH3.h"
 | 
					 | 
				
			||||||
#include "TNtuple.h"
 | 
					 | 
				
			||||||
#include "TFile.h"
 | 
					 | 
				
			||||||
#include "TRandom.h"
 | 
					 | 
				
			||||||
#include "TMath.h"
 | 
					 | 
				
			||||||
#include "TCanvas.h"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class Progress {
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
public:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 Progress(Int_t n);
 | 
					 | 
				
			||||||
 Progress(Int_t n, Double_t p0_Set);
 | 
					 | 
				
			||||||
 Progress(Int_t n, Double_t p0_Set, Double_t startposition);
 | 
					 | 
				
			||||||
 ~Progress();
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 void Count(char a);
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 Double_t GetP0();
 | 
					 | 
				
			||||||
 Int_t GetSteps();
 | 
					 | 
				
			||||||
 Double_t GetNext(char a);
 | 
					 | 
				
			||||||
 Double_t GetPrevious();
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 void SetP0(double p0_new);
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 std::vector<Double_t> GetX();
 | 
					 | 
				
			||||||
 std::vector<Double_t> GetY();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
private:
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 TRandom* random1;
 | 
					 | 
				
			||||||
 const Int_t n;
 | 
					 | 
				
			||||||
 std::vector<Double_t> x;
 | 
					 | 
				
			||||||
 std::vector<Double_t> y;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 Double_t p0;
 | 
					 | 
				
			||||||
 Double_t preVstate;
 | 
					 | 
				
			||||||
 Int_t steps;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
										
											Binary file not shown.
										
									
								
							| 
						 | 
					@ -1,10 +1,6 @@
 | 
				
			||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Author: Balázs Demeter (balazsdemeter92@gmail.com)
 | 
					 | 
				
			||||||
# Version: 1.0
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Script for build and make Brownian movement in one dimension
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					rm -rf bm1d_build
 | 
				
			||||||
mkdir bm1d_build
 | 
					mkdir bm1d_build
 | 
				
			||||||
cd bm1d_build
 | 
					cd bm1d_build
 | 
				
			||||||
cmake ../
 | 
					cmake ../
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,40 @@
 | 
				
			||||||
 | 
					#include "BM1DProcess.hh"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BM1DProcess::BM1DProcess(Int_t nP) : 
 | 
				
			||||||
 | 
					  nSteps (nP), p0(0.5), p1(0.3)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  randomGenerator = new TRandom();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BM1DProcess::~BM1DProcess()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  ;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void BM1DProcess::Init(){
 | 
				
			||||||
 | 
					  t.push_back(0.0);  //let's start at t=0, x=0, you can change it if you vant, please use Set methods
 | 
				
			||||||
 | 
					  x.push_back(0.0);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void BM1DProcess::Run(){
 | 
				
			||||||
 | 
					  for (Int_t i = 1;i < nSteps;i++)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      rand1 = randomGenerator->Uniform();
 | 
				
			||||||
 | 
						if(rand1 < p0) {  //step in time, but no step in x
 | 
				
			||||||
 | 
						  t.push_back(t[i-1] + 1);
 | 
				
			||||||
 | 
						  x.push_back(x[i-1]);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else {//step left or right
 | 
				
			||||||
 | 
						  if(rand1 < p0 + p1)
 | 
				
			||||||
 | 
						    {
 | 
				
			||||||
 | 
						      t.push_back(t[i-1]+1);
 | 
				
			||||||
 | 
						      x.push_back(x[i-1]+1); //one step right
 | 
				
			||||||
 | 
						    }
 | 
				
			||||||
 | 
						  else
 | 
				
			||||||
 | 
						    {
 | 
				
			||||||
 | 
						      t.push_back(t[i-1]+1);
 | 
				
			||||||
 | 
						      x.push_back(x[i-1]-1); //one step left
 | 
				
			||||||
 | 
						    }
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,35 @@
 | 
				
			||||||
 | 
					#include "Plotter.hh"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Plotter::Plotter()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  ;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					void Plotter::Plot(Int_t n, std::vector<Double_t> t, std::vector<Double_t> x){
 | 
				
			||||||
 | 
					  fOut = new TFile("result.root", "RECREATE");
 | 
				
			||||||
 | 
					  g1 = new TGraph(n,&t[0],&x[0]);
 | 
				
			||||||
 | 
					  canv = new TCanvas("canc","display",800,400);
 | 
				
			||||||
 | 
					  TTree *BM1DTree = new TTree("BM1DTree","BM1DTree");
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  g1->Draw();
 | 
				
			||||||
 | 
					  g1->SetLineColor(1);
 | 
				
			||||||
 | 
					  g1->SetLineWidth(1);
 | 
				
			||||||
 | 
					  g1->SetMarkerColor(1);
 | 
				
			||||||
 | 
					  g1->SetMarkerStyle(0);
 | 
				
			||||||
 | 
					  g1->SetTitle("Brownian Movement D=1");
 | 
				
			||||||
 | 
					  g1->GetYaxis()->SetTitle("X");
 | 
				
			||||||
 | 
					  g1->GetXaxis()->SetTitle("Time");
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  BM1DTree->Branch("tl",&tl, "tl/D");
 | 
				
			||||||
 | 
					  BM1DTree->Branch("xl",&xl, "xl/D");
 | 
				
			||||||
 | 
					  for (unsigned int i = 0; i < t.size(); i++){
 | 
				
			||||||
 | 
					    tl = t[i];
 | 
				
			||||||
 | 
					    xl = x[i];
 | 
				
			||||||
 | 
					    BM1DTree->Fill();
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  g1->Write();
 | 
				
			||||||
 | 
					  BM1DTree->Write();
 | 
				
			||||||
 | 
					  fOut->Close();
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,92 +0,0 @@
 | 
				
			||||||
/// BM1D program. Date: 2017-10-29 Creators: Balázs Demeter, Balázs Ujvári, Dávid Baranyai
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "Progress.hh"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Progress::Progress(Int_t nP) : 
 | 
					 | 
				
			||||||
n (nP), p0(1), preVstate(0), steps(0)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	random1 = new TRandom();
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Progress::Progress(Int_t nP, Double_t p0_Set) : 
 | 
					 | 
				
			||||||
n (nP), p0(p0_Set), preVstate(0), steps(0)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	random1 = new TRandom();
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Progress::Progress(Int_t nP, Double_t p0_Set, Double_t startposition) : 
 | 
					 | 
				
			||||||
n (nP), p0(p0_Set), preVstate(startposition), steps(0)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	random1 = new TRandom();
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Progress::~Progress()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
void Progress::Count(char a)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	for (Int_t i=0;i<n;i++)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        if(i==0)
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            x.push_back(p0);
 | 
					 | 
				
			||||||
            y.push_back(0.0);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        x.push_back(GetNext(a));
 | 
					 | 
				
			||||||
		y.push_back(steps);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Double_t Progress::GetNext(char a)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
		switch(a){
 | 
					 | 
				
			||||||
			case 'u':
 | 
					 | 
				
			||||||
			preVstate+=random1->Uniform(-p0,p0);
 | 
					 | 
				
			||||||
			break;
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
			case 'g':
 | 
					 | 
				
			||||||
			preVstate+=random1->Gaus(-p0,p0);
 | 
					 | 
				
			||||||
			break;
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
			default:
 | 
					 | 
				
			||||||
			std::cout<<"Invalid argument!"<<std::endl;
 | 
					 | 
				
			||||||
			preVstate+=0.0;
 | 
					 | 
				
			||||||
			break;
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        steps++;
 | 
					 | 
				
			||||||
        return preVstate;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
Double_t Progress::GetPrevious()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
        return preVstate;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
void Progress::SetP0(Double_t p0_new)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
        p0=p0_new;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
Double_t Progress::GetP0()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
        return p0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
Int_t Progress::GetSteps()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
        return steps;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
std::vector<Double_t> Progress::GetX()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	return x;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
std::vector<Double_t> Progress::GetY()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	return y;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Loading…
	
		Reference in New Issue