This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
public:docs:generators_and_rivet [2021/12/30 19:52] – Junghwan Goh | public:docs:generators_and_rivet [2022/04/07 05:07] (current) – Haesung Park | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== Generator와 Rivet 사용법 ===== | + | ===== Generator와 Rivet 구동법 ===== |
- | 연구실 환경에서 Rivet과 각종 MC generator를 | + | 연구실 환경에서 Rivet과 각종 MC generator를 |
* Rivet framework을 이용하면 hepdata 리포지토리로부터 실험 결과를 다운로드 받고 각종 MC generator를 이용해 생성된 HepMC 파일을 읽어 직접 비교 분석할 수 있습니다. | * Rivet framework을 이용하면 hepdata 리포지토리로부터 실험 결과를 다운로드 받고 각종 MC generator를 이용해 생성된 HepMC 파일을 읽어 직접 비교 분석할 수 있습니다. | ||
* HepMC 를 분석하는 코드를 처음부터 끝까지 직접 작성할 수 있지만, Rivet 프레임워크를 이용하면 FastJet과 연동, generator level에서의 b tagging, plotting, web page생성 등 많은 기능을 제공하기 때문에 매우 유용합니다. | * HepMC 를 분석하는 코드를 처음부터 끝까지 직접 작성할 수 있지만, Rivet 프레임워크를 이용하면 FastJet과 연동, generator level에서의 b tagging, plotting, web page생성 등 많은 기능을 제공하기 때문에 매우 유용합니다. | ||
Line 6: | Line 6: | ||
* 여러 generator별로 실행 환경을 구성하는 것은 생각보다 까다롭습니다. 가능한 한 검증 된 container image를 생성해 사용할 수 있도록 하겠습니다. | * 여러 generator별로 실행 환경을 구성하는 것은 생각보다 까다롭습니다. 가능한 한 검증 된 container image를 생성해 사용할 수 있도록 하겠습니다. | ||
- | ===== Rivet 사용하기 ===== | + | ===== Rivet 구동하기 ===== |
Rivet에 대한 설명은 Rivet 홈페이지를 참고하세요. | Rivet에 대한 설명은 Rivet 홈페이지를 참고하세요. | ||
* https:// | * https:// | ||
Line 30: | Line 30: | ||
위의 명령어가 실행된다면 이미 rivet을 사용할 준비가 된 상태입니다. | 위의 명령어가 실행된다면 이미 rivet을 사용할 준비가 된 상태입니다. | ||
+ | |||
+ | (작성중입니다) | ||
+ | |||
+ | rivet - 처음 구동해보기 | ||
+ | 준비물 : hepmc 파일 | ||
+ | 예시 | ||
+ | <code bash> | ||
+ | rivet -a CMS_2018_I1620050 event_PYTHIA_0.hepmc | ||
+ | </ | ||
+ | CMS_2018_I1620050 자리에 본인이 구동해보고싶은 analysis 입력 | ||
+ | event_PYTHIA_0.hepmc 자리에 본인의 hepmc 파일 입력 | ||
+ | |||
+ | rivet - 새로운 analysis 만들기 | ||
+ | <code bash> | ||
+ | rivet-mkanalysis analysis_title | ||
+ | </ | ||
+ | > 기본적인 analysis 틀이 만들어짐 (analysis_title.cc analysis_title.plot analysis_title.info) | ||
+ | |||
+ | 기본적인 c++ 지식 필요 | ||
+ | [[https:// | ||
+ | [[https:// | ||
+ | 등등 페이지를 참조하여 rivet 문법 확인 후 analysistitle.cc 파일에 작성 | ||
+ | |||
+ | 다 작성하면 | ||
+ | <code bash> | ||
+ | rivet-buildplugin analysistitle.cc | ||
+ | </ | ||
+ | 를 통해 analysis를 본인 리벳 폴더 안에 본인의 analysis 가 저장됨 | ||
+ | (환경변수) | ||
+ | <code bash> | ||
+ | | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | rivet --list-analyses | ||
+ | </ | ||
+ | 본인의 analysis 가 제대로 컴파일되어 저장된지 확인 | ||
+ | analysistitle.plot 파일은 analysis 에서 x축 y축을 바꿀 수 있고, 다른 | ||
+ | analysistitle.info 파일은 | ||
+ | |||
+ | rivet - 새로운 analysis 구동하기 | ||
+ | <code bash> | ||
+ | rivet -a analysistitle event_PYTHIA_0.hepmc | ||
+ | </ | ||
+ | 를 통해서 직접 만든 analysis 구동 가능 | ||
==== (optional) Rivet 이미지 만들기 ==== | ==== (optional) Rivet 이미지 만들기 ==== | ||
만약 원하는 Rivet 이미지가 이미 hep 서버에 만들어져 있지 않아서 직접 만들어야 한다면 아래 명령어를 실행하면 됩니다. | 만약 원하는 Rivet 이미지가 이미 hep 서버에 만들어져 있지 않아서 직접 만들어야 한다면 아래 명령어를 실행하면 됩니다. | ||
Line 39: | Line 84: | ||
</ | </ | ||
- | ===== aMC@NLO | + | ===== aMC@NLO |
Rivet과 마찬가지로, | Rivet과 마찬가지로, | ||
Line 47: | Line 92: | ||
<code bash> | <code bash> | ||
- | singularity run / | + | singularity run / |
+ | # | ||
</ | </ | ||
+ | 기본 동작 방식으로 mg5_aMC 가 실행됩니다. 만약 shell을 직접 띄우고 실행하려면, | ||
+ | |||
+ | <code bash> | ||
+ | singularity exec / | ||
+ | </ | ||
+ | |||
+ | 를 실행합니다. mg5_aMC 는 ''/ | ||
+ | |||
+ | CVMFS에 설치된 LHAPDF 데이터 파일을 사용하려면 다음과 같은 방식으로 실행하면 됩니다. | ||
+ | |||
+ | <code bash> | ||
+ | singularity run -B/ | ||
+ | / | ||
+ | # | ||
+ | # / | ||
+ | </ | ||
==== (optional) aMC@NLO 이미지 생성하기 ==== | ==== (optional) aMC@NLO 이미지 생성하기 ==== | ||
- | 사용법은 [[: | + | 이미지 생성 방법은 [[: |
- | ===== Powheg | + | ===== Powheg |
+ | (작성중입니다) | ||
+ | *[[https:// | ||
+ | LHAPDF, fastjet | ||
+ | |||
+ | <code bash> | ||
+ | tar xf LHAPDF-T.X.Y.tar.gz | ||
+ | cd LHAPDF-T.X.Y | ||
+ | ./configure --prefix=/ | ||
+ | make | ||
+ | make install | ||
+ | </ | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | export PYTHONPATH=path/ | ||
+ | export LD_LIBRARY_PATH=path/ | ||
+ | export PATH=path/ | ||
+ | export LHAPDF_DATA_PATH=path/ | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | tar xf fasjet-x.y.z | ||
+ | cd fastjet-x.y.z | ||
+ | ./configure --prefix=/ | ||
+ | make | ||
+ | make check | ||
+ | make install | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | export PATH=path/ | ||
+ | </ | ||
+ | |||
+ | POWHEG BOX | ||
+ | powheg box 메인 프로그램 설치 | ||
+ | <code bash> | ||
+ | $ svn checkout [--revision n] --username anonymous --password anonymous svn:// | ||
+ | </ | ||
+ | 설치 후 POWHEG-BOX-V2 디렉토리로 이동해서 | ||
+ | <code bash> | ||
+ | $ svn list [--revision n] --username anonymous --password anonymous svn:// | ||
+ | </ | ||
+ | User-Processes-V2 대신 원하는 process를 powheg box 리스트에서 찾아서 입력 | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | make pwhg_main | ||
+ | </ | ||
+ | 컴파일 끝나고 끝나면 powheg.input 파일을 원하는 설정으로 만들거나 cms-sw genproducts 안의 input 파일 찾아보고 사용 | ||
+ | |||
+ | 현재 확인한 구동가능한 process | ||
+ | : ttH, ttb_NLO_dec | ||
+ | (세부적인 사용방법은 각 process폴더 안의 doc 폴더 안에 존재) | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Sherpa 구동하기 ===== | ||
+ | Sherpa docker image | ||
+ | <code bash> | ||
+ | singularity run docker:// | ||
+ | </ | ||
+ | |||
+ | [[https:// | ||
+ | 기본적인 옵션들은 -h 참조 | ||
+ | |||
+ | 기본 구동 방법 | ||
+ | <code bash> | ||
+ | Sherpa Run.dat | ||
+ | </ | ||
+ | |||
+ | Run.dat 파일을 manual 참조하여 작성 후 구동 | ||
+ | |||
+ | ===== Pythia8 구동하기 ===== | ||
+ | <code bash> | ||
+ | singularity run docker:// | ||
+ | </ | ||
+ | |||
+ | Pythia8의 경우 main 파일을 직접 작성하여 구동 하는것이 원칙 이지만 | ||
+ | |||
+ | pythia8 내부의 example 폴더를 찾아보면 기본 main.cc 파일을 컴파일하여 main 파일을 사용할 수 있음 | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | 예시 구동 방법: | ||
+ | <code bash> | ||
+ | ./main89 main89mlm.cmnd output.hepmc | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Herwig7 구동하기 ===== | ||
+ | <code bash> | ||
+ | singularity run docker:// | ||
+ | </ | ||
+ | |||
+ | herwig 환경 설정 | ||
+ | <code bash> | ||
+ | source activate | ||
+ | </ | ||
+ | |||
+ | 원하는 .in 파일을 찾거나 작성 후 | ||
+ | <code bash> | ||
+ | Herwig read XXXX.in | ||
+ | </ | ||
+ | read를 하고나면 XXXX.run 파일이 만들어져있고 | ||
+ | |||
+ | <code bash> | ||
+ | Herwig run XXXX.run | ||
+ | </ | ||
+ | run 파일을 구동 | ||
- | ===== Sherpa 사용하기 ===== |