&size(20){更新終了しました( 2016/2/17) }; ここの情報は古いかもしれません。 General ParticleGenerator document can be found here~ http://atlas-sw.cern.ch/cgi-bin/viewcvs-atlas.cgi/offline/Generators/ParticleGenerator/doc/ParticleGenerator.pdf?view=co #contents *ParticleGenerationUsingGrid [#m84ae213] Operation check was done with athena release 16.0.2.1~ you can get this package here:~ /afs/cern.ch/user/k/kkessoku/public/Package/ParticleGenerationUsingGrid You need to change Gridprocess_trf.sh and singlepart_gen.py and setup the Grid. After that, execute Gridprocess_trf.sh, cmd> sh Gridprocess_trf.sh *Customized1DParticleGenerator [#b9300921] Operation check was done with athena release 16.0.2.1~ you can get this package here:~ /afs/cern.ch/user/k/kkessoku/public/Package/Customized1DParticleGenerator ~ This customized particle generator is based on "ParticleGenerator-00-00-49"~ Default 1D distribution to be generated is "1/pT" for the pT distribution.~ First of all, you should decompress "Generators.tar.gz" cmd> tar xzvf Generator.tar.gz After decompressing, go to "cmt/" directory. and execute "cmt config" and "gmake" cmd> cd Generators/ParticleGenerator/ParticleGenerator-00-00-49/cmt/ cmd> cmt config cmd> gmake ~ go to work directory, cmd> cd ../work/ You need to setup grid. And after changing Gridprocess_trf.sh, cmd> sh Gridprocess_trf.sh ~ ~ ☆ for reference ☆~ how to define the distribution you want~ (ex) 1/pT distribution - change /src/ParticleGeneratorExampleHistogram.cxx ParticleGeneratorExampleHistogram.cxx AIDA::IHistogram1D* exampleHistogram = histoSvc()->book("/stat/particlegenerator/1", // Full path, including histogram ID "Source Distribution", // Histogram title 1000, // Number of x-axis bins 10.0*GeV, // x-axis lower limit 200.0*GeV // x-axis upper limit ); .... // Compute function. double functionValue = (10.*GeV)*(10.*GeV) / (x * x); --> change to double functionValue = 1. / x; // Fill the histogram with the function. exampleHistogram->fill(x,functionValue); log << MSG::VERBOSE << "bin " << i << " pT=" << x << " weight=" << functionValue << endreq; After recompiling, you can generate (, in this case, ) 1/pT distribution sample: cmd> csc_evgen_trf.py 1 1 10 1234 jobOptions_ParticleGeneratorExampleHistogram.py EVNT.pool.root *Customized2DParticleGenerator[#o6c4e4fd] you can get this package here:~ /afs/cern.ch/user/k/kkessoku/public/Package/Customized2DParticleGenerator Operation check was done with athena release 15.6.11.3~ I would recommend you to use this package on the login.icepp.jp ! ☆Outline of the procedure is as follows STEP1. decompress and compile the customized particle generator. STEP2. following an eta-pt histogram you provided we will generate data files. After that EVNT files will be made by using the data files and athena. ( if you are on the login.icepp.jp, you can also use the batch system ) STEP3. make ESD files using the Grid More specific explanation is shown below. ~ ~ ~ ~ ☆STEP1: prepare ParticleGenerator~ ~ This customized particle generator is based on "ParticleGenerator-00-00-49"~ First of all, you should decompress "Generators.tar.gz" cmd> tar xzvf Generator.tar.gz ParticleKinematics.h/cxx are customizied.(you don't have to do anything for them.)~ After decompressing, go to "cmt/" directory. and execute "cmt config" and "gmake" cmd> cd Generators/ParticleGenerator/ParticleGenerator-00-00-49/cmt/ cmd> cmt config cmd> gmake ~ ~ ~ ☆STEP2: Make data files and Evgen files ~ Before doing this, you should provide a histogram(i.e. root file) of eta-pt distribution (which you want to generate ) in this directory.~ (NOTE. the histogram must be eta for x-axis, pT for y-axis.)~ You go to "./Generators/ParticleGenerator/ParticleGenerator-00-00-49/work/" directory. cmd> cd ../work/ ~ (1) You will make data files from a given Eta-pT distribution you provided. ~ ~ You need to change MakeRef.sh~ (NOTE. if the unit of pT in the histogram you provide is [GeV], you should set "isGeV flag" as "true".) ~ After changing it, cmd> sh MakeRef.sh You will get these three files.~ a. MakeRef.root : Thare are two histogrmas. One is a reference distribution you provided and the other is a one generated.~ b. MakeRef.ps : The same plots of the ones in the MakeRef.root.~ c. ref.data* : They are data files which will be used for the particle generation in the next step.~ ~ They will be stored in the "OutData" directory and each of them has 2200 events. ~ ~ ~ (2) Make Evgen files by executing the customized ParticleGenerator.~ ~ a) [Recommended] If you are on the login.icepp.jp and want to process in pararell, you can use batch system as follows.~ (a-1) use batch system only for EVNT generation (easy to use) ~ Please change MakeEvgenWithBsub.sh and then, cmd> sh MakeEvgenWithBsub.sh You can check job status by using "bjobs" command. cmd> bjobs and "bqueues" command tells you the batch status. cmd> bqueues You will get Evgen files in the directory which you choosed in "MakeEvgenWithBsub.sh".~ ~ ~ (a-2) use batch system for all process, i.e. use until finish to make ntuples. ( this is a little bit bother, but once you setup them, it is probably the fastest method.)~ First of all, you should check out and compile the TrigEffJpsiNtuple and bring jobOptions.py to be used to the "TrigEffJpsiNtupleJO" directory.~ Please change MakeEvgenWithBsub.sh and then, cmd> sh MakeEvgenAllWithBsub.sh You can check job status by using "bjobs" command. cmd> bjobs and "bqueues" command also tells you the batch status. cmd> bqueues You will get ntuples in the directory which you choosed in "MakeEvgenAllWithBsub.sh".~ ~ ~ ~ b) If you are going to generate them without using batch system or are on the lxplus/lxatut... , change MakeEvgen.sh and then, cmd> sh MakeEvgen.sh You will also get Evgen files in the directory which you choosed in "MakeEvgen.sh".~ ~ ~ ~ ~ ☆STEP3: Make ESD files from those generated evgen-files by using the Grid. ~ ~ Before doing this, you need to setup the dq2 and grid. (1) put evgen-files and freeze them ~ cmd> dq2-put -L "TOKYO-LCG2_SCRATCHDISK" -s "name of directory which contains EVNT files you made" "user.kkessoku.20110118.evgen.EVNT.1" ex) cmd> dq2-put -L "TOKYO-LCG2_SCRATCHDISK" -s ~/work/Data/single_Muon/test20110118_1/EVNTs "user.kkessoku.20110118.evgen.EVNT.1" If you proceeded the STEP(a-2) as shown above, you should set "NTUP" which is a part of the dataset name instead of "EVNT".~ (ex) user.kkessoku.20110118.TrigEffJpsiNtuple.NTUP.1~ ~ NOTE. the last arugument is a dataset name to be generated in the grid world.~ this name has to obey some convention, like user.yourname.comment.EVNT.1~ (reference: http://cdsweb.cern.ch/record/1070318/files/gen-int-2007-001.pdf )~ ~ freeze them, cmd> dq2-freeze-dataset user.kkessoku.20110118.evgen.EVNT.1 ~ (2) submit jobs to the Grid ~ change GridProcess.sh then, cmd> sh GridProcess.sh *Customized3DParticleGenerator (not complete) [#fd288d6e] you can get this package here:~ /afs/cern.ch/user/k/kkessoku/public/Package/Customized3DParticleGenerator Operation check was done with athena release 15.6.11.3~ I would recommend you to use this package on the login.icepp.jp ! This package is almost the same of the Customized2DParticleGenerator.~ So please see previous section for more details.~ The main difference is that you have to provide an eta-pt-phi distribution instead of an eta-pt distribution.~ And it must be eta for x-axis, pT for y-axis and phi for z-axis.