#include <iostream> #include <fstream> #include <sstream> #include <math.h> #include <Rtypes.h> #include <TSystem.h> #include <TROOT.h> #include <TStyle.h> #include <TCanvas.h> #include <TChain.h> #include <TTree.h> #include <TF1.h> #include <TCut.h> #include <TString.h> #include <TMath.h> #include <TH1F.h> #include <TH2F.h> #include <TGraphErrors.h> #include "math.h" #include "TFile.h" #include <iostream> #include <fstream> #include <vector> #include <unistd.h> #include "TRandom3.h" #include "TChain.h" #include "TRandom.h" #include <sstream> #include <iostream> #include <map> ///////////////////////////////////////////////////////////////// // SCRIPT FOR MIXING AND SHUFLING EVENTS IN TAU23MU ///// ///////////////////////////////////////////////////////////////// using namespace std; int main(int argc, char **argv) { if(argc !=2) { cout<<"Usage: ./judment_day <SEED>"<<endl; return -1; } float typef=atof(argv[1]); int type= (int)typef; std::map<int,string> mymap; mymap[0]="Euler number determination, Variance of MC estimator, Convergance of MC estimator"; mymap[1]="Law of Large numbers, Central Limit theorem, Gauss pdf generator using Central Limit Theorem"; mymap[2]="Uncertenty of MC methods, Buffon needle, Heads or tails MC vs Crude MC"; mymap[3]="Varaince reduction methods"; mymap[4]="Adaptive MC integration methods: RIWIAD altoright, DIVIONNE2"; mymap[5]="Method of Moments"; mymap[6]="Random numbers and pseudorandom numbers, sources of numbers"; mymap[7]="Linear number generators, Marsaglia genetarors, Shift register generator, Fibonacci generator"; mymap[8]="Arbitrary pdf generation: reverting the cdf, Elimination method, superposition of distributions"; mymap[9]="Generation of exp, gauss, Breit-Wigner pdf"; mymap[10]="Generation of x^n, Bernaulli, Poisson, Generation on/in multi-dim symplex"; mymap[11]="Markov Chain MC, MC estimator of S=A+B, solfing a linear system: X=p Y + (1-p) A; Y = q X + (1-q) B"; mymap[12]="Neumann expansion of linear system, Neuman-Ulam method and it's dual version"; mymap[13]="Matrix inversion, Solvinf Laplace diferential euqation with MCMC (Dirichlet boundary condition)"; mymap[14]="Parabolic equation and MCMC solution"; mymap[15]="Dirichlet conditions as linear system"; mymap[16]="Random walk with different step size, Muller method, Laplace eq. with Neumann boundary conditions"; mymap[17]="Eigenvalue problem, functioninterpolation"; mymap[18]="Optimisation with hit and miss method, sequence optimisation"; TRandom3 *rand = new TRandom3(type); cout<<"Your lucky questions are: "<<endl; vector<int> numbers(0); int counter=0; while(counter <4) { bool ok=true; int num=(int)(rand->Rndm()*123)%19; for(int j=0;j<numbers.size();++j) { if(numbers[j] == num) { ok=false; break; } } if(ok) { numbers.push_back(num); counter++; } } for(int i=0;i<numbers.size();++i) { cout<<i+1<<") "<<mymap[numbers[i]]<<endl; } return 1; }