[[FrontPage]] * Data Challenge 3 [#v376f4ff] DC3に向けSimuulationでは AtlasG4Appsのpythonを使ったmacroのかわりのインターフェース使用する。Data Challenge 3は今ではCSC:Computer System Commissioningと呼ばれている。 * Kit 12.0.0をLocal Siteで動かす [#v1ec4623] mkdir -p ~/cosmicRun/12.0.0/AtlasOffline-12.0.0 cd ~/cosmicRun/12.0.0 vi mysetup.sh export LANG=C source /afs/cern.ch/12.0.0/cmtsite/setup.sh -tag=AtlasOffline,12.0.0 exit vi . mysetup.sh cd AtlasOffline-12.0.0 vi requirements macro TestArea "${PWD}" path_prepend CMTPATH "$(TestArea)" exit vi cmt config; source setup.sh echo $CMTPATH cmt co -r xxx なぜかLD_LIBRARY_PATHなどが十分でない。 * CERN で12.0.0を動かす[#v53ebea9] テストエリアのセットアップに制限が加わった。テストエリアの下にAtlasOffline-12.0.0があることが必要となる。 mkdir -p ~/cosmicRun/12.0.0 mkdir ~/cosmicRun/cmthome source /afs/cern.ch/sw/contrib/CMT/v1r18p20060301/mgr/setup.sh cd ~/cosmicRun/cmthome vi requirements set CMTSITE CERN set SITEROOT /afs/cern.ch macro ATLAS_DIST_AREA ${SITEROOT}/atlas/software/dist macro ATLAS_RELEASE "12.0.0" macro ATLAS_TEST_AREA ${HOME}/cosmicRun/12.0.0 use AtlasLogin AtlasLogin-* $(ATLAS_DIST_AREA) apply_tag opt exit vi cmt config . setup.sh -tag=12.0.0 printenv CMTPATH check testArea path cd ~/cosmicRun/12.0.0 mkdir AtlasOffline-12.0.0 cd AtlasOffline-12.0.0 cmt co -r xxxxxx と言う具合になります。結局AtlasOffline-12.0.0を作ってやらないとうまく行きません。 日本に帰って、pcoput12でなくlxplusでやるとうまくいかなかった。なんでか。. コマンドが効かなくなった。sourceでやっているがこれはおかしい。 * kit 11.4.0の走らせ方 [#v72caf95] devloperの3月末のメールによると、インストールしたところのcmtsiteにrequirementsができていて、そのなかにやりかたが書いてある。でも自分でコンパイルできない。 でも実際にやって見るとダメという話がある。確かにgeant4がLD_LIBRARY_PATHにないのでこけている。これは難しい。手でいれると動きそうだ。 https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasRelease1140#Simulation これでcosmicSimは動いたが、G4AtlasAppsでjobOptions.G4Atlas_Sim.pyをやったらroot5 migration problemというエラーが出てこける。 HepMCのgenerated eventsのroot Fileを11.0.2のものとかを持ってきて、LD_LIBRARY_PATHにkitarea/usr/libをたしてlibshift.soを、読めるようにするとシミュレーションが始まった。あとはreplicaを読ませて早くしてやるだけ。結構世話がやける。Pthia_iもないというのでgenerationもやりにくい。とにかくbuildになった効果が結構ある。 またdirectory構造が変わったのでテストエリアを定義して、コンパイルをするときにはbuildのところを作ってやったほうが良いかも。いまは動かすだけだから、特に問題ないが。 cd ; mkdir G4AtlasApps; cd G4AtlasApps cp kitDir/cmtsite/setup.sh ./; source setup.sh -tag=AtlasOffline,11.4.0,opt mkdir -p 11.4.0/AtlasSimulation/1.4.0; cd 11.4.0/AtlasSimulation/1.4.0 vi requirements and insert following macro TestArea "${PWD}" path_prepend CMTPATH "$(TestArea)" cmt config ; source setup.sh cmt co -r G4AtlasApps-00-00-85 Simulation/G4Atlas/G4AtlasApps cmt co -r Digitization-00-08-21 Simulation/Digitization OutOfBoxで古いroot4で作られたイベントを読んで、hit ファイルが作成できた。 * 11.3.0での変更点(LXPLUS) [#v5ead496] atlasloginで設定するようなことがdeveloperメーリングリストででていた。具体的には以下を参照 https://twiki.cern.ch/twiki/bin/view/Atlas/MooreHowTo11pt3pt0 新しいプログラム構造にはバージョンのディレクトリがない。AthenaRunTimeがないというエラーも良く出る。なれ親しんだInDetRecExampleでrunさせるには以下のやりかたがある。shareのpythonファイルを手元に置くと言う意味しかないが。requirementsの最後の2行はいらないかも。 #ref(requirements) mkdir InDetRecExample/11.3.0 cp ~ryuichi/InDetRecExample/11.3.0/requirements cp ~ryuichi/cmt.sh . cmt.sh cd InDetRecExample/11.3.0 cmt config . setup.sh -tag=11.3.0,opt echo $AtlasArea less $AtlasArea/../../AtlasReconstruction/1.3.0/InnerDetector/InDetExample/InDetRecExample/cmt/requirements cmt co -r InDetRecExample-01-00-72 InnerDetector/InDetExample/InDetRecExample cmt co -r InDetRecStatistics-00-01-26 InnerDetector/InDetValidation/InDetRecStatistics source $AtlasArea/AtlasOfflineRunTime/cmt/setup.sh cd InnerDetector/InDetExample/InDetRecExample/cmt cmt config . setup.sh cmt bro gmake cd ../run athena ../share/jobOptions.py 2>&1 | tee jobO.log java -jar /afs/cern.ch/atlas/software/builds/AtlasAnalysis/1.3.0/graphics/AtlantisJava/atlantis.jar * 11.0.2 Full chain test using kit [#v9041589] DeltaIntersectionがいじりにくくなった。Volumeごとに値を決めているようだが、元のファイルが不明。また以下のエラーが出る。多分細かすぎる。python/SimAtlasKernel.pyをいじると良い。 Problem in G4PropagatorInField::LocateIntersectionPoint: Convergence is requiring too many substeps: 101 Will abandon effort to intersect. Information on start & current step follows in cout: Current Position and Direction Step# X(mm) Y(mm) Z(mm) N_x N_y N_z Delta|N| StepLen StartSafety PhsStep NextVolume Start -0.41175716 -853.29394 334.66497 -0.65416212 -0.60642153 -0.45202306 0 0 4.2e-05 Init/NotKnown OutOfWorld 0 -0.41175716 -853.29394 334.66497 -0.65416212 -0.60642153 -0.45202306 0 0 4.2e-05 Init/NotKnown OutOfWorld 101 -0.3539767 -854.24406 334.11131 0.72301532 -0.52316399 -0.45116326 3.3e-08 1.2 4.2e-05 Init/NotKnown OutOfWorld atlasdbproがたまに落ちるようだ。安定に動かすときには以下のページを使ってmysqlのレプリカサーバを動かすのが良い。だがそのとおりやると、インストールした計算機からしかアクセスできない。 http://uimon.cern.ch/twiki/bin/view/Atlas/DatabaseDeployment * 11.0.0 Full chain test using kit[#v140ce36] G4AtlasAppsをチェックアウトして、jobOptionに以下のものを最後に付け加えると、eta cutができるので遅くならない。前方に崩壊する粒子があるとシミュレーションが止まるバグがあるらしい。sqliteをつかってオラクルへのアクセスを省略する。 RDBAccessSvc = Service( "RDBAccessSvc" ) RDBAccessSvc.UseDBConnSvc = FALSE RDBAccessSvc.Technology = "sqlite" RDBAccessSvc.HostName = "/afs/cern.ch/11.0.0/geomDB_sqlite" theApp.initialize() AtlasG4Eng.G4Eng._ctrl.G4Command("/Filters/Vertex/toggle ON") AtlasG4Eng.G4Eng._ctrl.G4Command("/Filters/Vertex/Spread 0.015 0.015 56. mm") AtlasG4Eng.G4Eng._ctrl.G4Command("/Filters/EtaPhiFilter/toggle ON") AtlasG4Eng.G4Eng._ctrl.G4Command("/Filters/EtaPhiFilter/EtaInterval -2.5 2.5") theApp.nextEvent( theApp.EvtMax ) theApp.exit() これらはアトラスG4ページのG4AtlasAppsのマニュアルのところに説明がある。これでSimulationは問題なさそう。Digitizationをcheckoutしてmake. AtlasDigitization.pyにLArのconditionDBのエラーを避けるための東大のミラーをセットした。うまくいかなかったのでatlasdbpro.cern.chに変更した。 reconstructionを作成したZmumu20evDigits.rootに付いてやってみたが、InnerDetectorのみ動いているよう(?)でloopが回らないので他をオフにしてみる。 11月2日のdeveloper listで以下のをしないとreconstructionが動かないと書いてあった。Release Statusにもこの問題が書いてある。11.0.1のkitをインストール中。 cmt co -r RecAthenaPool-00-00-41 Reconstruction/RecAthenaPool * 10.5.0 Simulation Digitization Reconstruction [#vfd47a01] SimulationでPyG4Atlas.pyをいじる必要はなくなった。DeltaInterSectionは物質境界でのコード交差点と直線交差点の距離だとグラントが言っていた。lxplusでReconstructionでなぜか今は失敗する。combinedのあたりなのでこのメッセージの問題か?doTauRec=False, DetDescrVersion="Rome-Final"でちゃんとイベントループが回り、今度はTRTのヒットがある。当然分解能がミューオンで10GeVで1.6%ぐらいに向上した。シリコンだけだと2.3%ぐらい。電子の物質による影響。これはカロリメータのキャリブレーションに必要。Z質量、トラックχ2乗のカットでブレムスの影響を落とすことができる? #ref(eleTrk_pt.eps) #CMT> Warning: package VxVertex VxVertex-01-* Tracking/TrkEvent not found (requested by HiggsToTauTau) ** full chain using kit 10.5.0 [#v6e9be44] kitはsw/lcg/app/releases/SEAL/SEAL_1_7_1/slc3_ia32_gcc323/pythonのpermissionに問題が有る。(rwx------) Digitizationで以下のエラーに遭遇した。もう一回やってみる。2回目はOKだった。サーバーがときどきbusyになるのか? end of initialize of LArMCSymTool IOVDbMgr FATAL *** ConditionsDB exception caught: MySQL error [2013] : Lost connection to MySQL server during query *** catched in file: MySqlTypes.h line: 2013 *** error code: 2000 DetectorStore ERROR could not bind handle to ILArRamp to key: LArRamp ToolSvc.LArADC2... ERROR Cannot register testCallback function for key LArRamp 以下のページに出てくる事をjobOptionsファイルに入れると問題がないという話も有る。よさそうなサーバを設定しているのか? http://uimon.cern.ch/twiki//bin/view/Atlas/BestPracticesForRelease10 アトラス計算機のメーリングリスト情報では以下の設定で良いらしい。 LArCondCnvDbServer = "atlasdb1.icepp.s.u-tokyo.ac.jp" * 10.4.1 Simulation Digitization Reconstruction on lxplus [#ve2d5366] いま29/9/05ではFull chain OK? tssがなぜかterminateされたのでバッチでサブミット。以下のメッセージが出てるが、ntupleにTruthは入っていた。。 ConversionFinder WARNING Could not retrieve McEventCollection DevVersionのTrue Falseの比較を行うため、モンテカルロイベントを用意する。各プロセスにDevVersionを記述する。ラン環境とSCT_GeoModelのチェックアウト cmt co -r SCT_GeoModel-00-07-00 InnerDetector/InDetDetDescr/SCT_GeoModel cmt co -r G4AtlasApps-00-00-44 Simulation/G4Atlas/G4AtlasApps cd Simulation/G4Atlas/G4AtlasApp/*/cmt change requiremets to implement naito's new SCT_GeoModel use SCT_GeoModel SCT_GeoModel-00-07-00 InnerDetector/InDetDetDescr cmt config cmt broadcast cmt config . setup.sh cmt broadcast gmake ** Generation [#n3af5af3] #ref(ParticleGenerator.py) cd ../run source /afs/cern.ch/atlas/software/dist/10.4.1/AtlasRelease/AtlasRelease-10-04-01/cmt/setup.sh get_files rome_generation_skeleton.py vi rome_generation_skeleton.py # 出力ファイル名と ParticleGenerator.pyを設定。 athena rome_generation_skeleton.py McEvent.rootができるのでファイル名を変更しておくのがよさそう。PoolFileCatalog.xmlの中も変更。 ** Simulation [#a4ffb19b] #ref(jobOptions.G4Atlas_Sim.py) #ref(PyG4Atlas.py) cd Simulation/G4Atlas/G4AtlasApps/*/python vi PyG4Atlas.py /setDeltaIntersection comment out 4 lines of G4AtlasEngine._ctrl.fldMenu related with transport in field DeltaIntersectionの関係でsimulationが長引いたりするので、ここは調べる必要がある。 G4AtlasApps/*/python でgrep DeltaIntersection *.pyで設定を調べて、このへんを変更してシミュレーションをし、オプティマイズする必要がある。 #ref(GorfineSimStudySept2005.ppt) ** Digitization [#q873bd66] GeoModelSvcのロードの後になるように GeoModelSvc.SCT_DetectorTool.DevVersion = True を挿入する。そのためにDigitizationをチェックアウトする。 #ref(DigitizationConfig.py) DigitizationConfig.pyをそのまま使うとカロリメータのところでリソースを食うので簡単のためにノイズをオフにする。 doCaloNoise = False cmt co -r Digitization-00-08-09 Simulation/Digitization cd Simulation/Digitization/*/share vi ConfigDigitization.py # GeoModelのInitのあとにDevVersionを記述 cd Simulation/G4Atlas/G4AtlasApp/*/run get_files DigitizationConfig.py # ファイルを指定。DetDiscriptionはRome-Finalを指定する。 athena DigitizationConfig.py Digitization/AtlasDigitization.py >& digit.log & ** Reconstruction [#k6d1bd7a] #ref(myTopOptions.py) get_files RecExCommon_topOptions.py vi myTopOptions.py #ファイルを指定。DetDiscriptionはDC2を指定する。Wiki参照。 doTauRec = False vi RecExCommon_topOptions.py # DevVersionを記述する。AllDet_detDescr.pyのあたり? athena myTopOptions.py >& recon2.log & 複雑なイベントでは時間がかかる可能性がある。 フルパスで指定したスクリプトを作成し以下のようにバッチジョブを投入する。1nh,1ndなどもある。(nはNormal CPU(?)のn) bsub -q 8nh test.sh #ジョブのサブミット bjobs -p #モニター JOBIDの表示 bqueues #Batch Queueの状態 bkill JOBID #ref(testSim.sh) #ref(testDigi.sh) #ref(testReco.sh) TBrowserで見たところ、運動量分布はほぼ正常。GetEntry(n),Show()で数字を見てみた。TRTのヒットがない。100イベント。 #ref(Trk_pt.eps) #ref(GetEntry.txt) 1000イベントをlxplusのバッチではしった。 今回はツリーのMakeClassが動いた。