進捗報告 M2 下村 140531 地上系会議 内容 • • • • MDC Simulator修正 イベントビューア修正 ソケット/QLプログラム修正 ToDo MDC Simulator 修正 • Writeオプションに、データのNo SuppressとFull Suppressを追加 – 使い方 • teleoutのオプションで、”-z”を指定 -z 0 : 通常データ -z 1 : No Suppress -z 2 : Full Suppress • CheckSum計算ルーチンの変更 – 計算方法 1st frame :UniqueKeyとEventデータワード数以外のSum 2nd 以降〜:UniqueKeyとCheckSum以外、Assign+ADCデータのSum – チェックサムの定義 • 上記Sumの2の補数(プログラム上:~checksum+1) • 最終フレームの最後のADCデータの次に格納 ※一番最後のワードではない … フレーム長は必ず偶数なので、 Nullになることがある。 イベントビューア修正 • ビューアの見た目を改善 – ModeのOn/Offを表すboxを追加 • 飛跡を引けるようにした EventIDが重ならない ように変更 緑色がマスクOn 緑:真の飛跡 赤:求めた飛跡 ソケット/QL プログラム修正 • ソケットプログラムのオプション追加 – “-c”:パケットに記述された時間を付け替えない • QLEvDisp、QLSummary、QLSumTextのルーチンの 改善 – 問題点:実行時に激しいメモリリーク 原因 :UniqueKey3が1,6以外のデータで、MDCSimulator のインスタンスをdeleteしてなかった – 修正後:激しいメモリリークは解消 ただし、微妙に残っているので今後の課題。 ToDo • Socketプログラム内部でチェックサムの再計 算 • テストデータのアップデート • メモリリークの解消 END MDC Simulator 修正 • Writeルーチンの変更の必要性 – MSSのサンプルデータの解析によりシミュレーションデータに以 下の相違点が判明 • イベントデータ2ワード目以降の13ワード目:ユーザシーケンスカウン タの削除 • CRCを削除 • フラグメントの最大、最小がNASA/ICS経由で違う => 最小以下の場合、0埋めする必要あり – NASA : Max Packet Size = 8(CCSDS Header) + 742 (内Event Data 730 words), Min Packet Size = 8(CCSDS Header) + 42 (内Event Data 30 words) – ICS : Max Packet Size = 748 Min Packet Size = 24 • Readルーチンの修正 (140517) – Eventデータ ラストフレームのWord数 • 先頭フレームのTotal Word Lengthを使い導出 (内Event Data 736 words), (内Event Data 12 words) MDC Simulator 修正 • テスト NASA/ICS経由のそれぞれについて10秒分データを 作成 – QLで確認 => データは問題なく読めた 過去のデータとの整合性は要検証 – TcpClientQLMainのReadオプション • “r”= 0 : 修正済みシミュレーションデータ “r”= 1 : MSSのサンプルデータ “r”= 2 : 過去のシミュレーションデータ QL追加 • QLSummary, QLSumText 定時データ、イベントデータのサマリを表示 定時データのサマリはMPCでのパルステスト用ソ フトウェアのルーチンを流用 – 使用方法 • TcpClientQLMainのオプションで、 “-S” : QLSummaryを起動 QTのWindowにサマリを表示 “-Q” : QLSumTextを起動 コマンドラインにサマリを表示 キーボードによる入力受付 QLSummary 使用例 Very preliminary! EPICS CADモデルの使用 • 現状 – 現在使用中のEPICSのGeometryもCADモデルである – ただし、EPICSユーザ部に以下のアップデートがある ので、現在導入中 -Bug -"EDepAll(_prim, Eff, Eff_prim)" were NOT initialized in each event. This is fixed. -Add -calculate the component number of first interaction point, and ouput it. -Update-1 -use "epq1stIntTrack" function(Epicsv9.161~) to find 1st interaction point -Update-2 -unify the numbering method of component number. the start number is "0", not "1" (ex.) SciFi number: (0~447) PWO-log number: (0~15) 課題リスト(140411) • • • • • • • QLのHit情報バグ(途中まで調査) 100TeV問題 CRCの取り扱い MDC Simulatorのメモリ管理(OK) データ生成 =>6周分で停止 広平面入射のHEトリガーレートが合わない トリガー効率の確認 QL Hit情報調査 • Localで調査 – git clone • 最新の状態でテスト環境構築 – test.sh実行でエラー発生(新環境) →バージョンを戻して確認 $ git checkout ‘ハッシュ’ (Date: Tue Jan 7 21:55:41 2014 +0900) DeadTimeの取り扱い変更が原因、ソースに追記 →もう一度test.shを実行し、現行verの結果とdiffにて確認 • 最新のテストデータにアップデートする必要あり – IEEE, GSE(ICS,NASA)ヘッダについてそれぞれ調査 • HEでトリガーされた全イベントに対し、LD TASC HE Hit情報 が0になっていないか確認 50秒分のデータをそれぞれ作成 →どちらもなっていなかった • WCOCのマシンでも確認、ok →QLではおかしいので、QLのアルゴリズムの確認 QL Hit情報調査 • QLのアルゴリズムの理解 – MDC Simulator 内部でパケットを読むルーチンが発見できなかった →解決済み(140419) • 内容 – ICS,NASA経由のデータを50秒分それぞれ生成 • EPICS all 55501 psingle – QL実行 • CHDのSingle,IMCY4のSingleがおかしい – – QLのインスタンス内でHit情報を確認 →上記バグが発生した MDCのインスタンス内でHit情報を確認 →上記バグが発生しない やった位置 » ThreadClientRelay.cpp • ReadGSE()の直下◯ • CloneInstance()後のmdcQueue☓ » MDCSimulator.cc • CloneInstance()中☓ • CopyValuables()中◯ » QLEvDisp.cpp TQLDispDet.cc • InitDraw()中☓ MDCSimulator::CloneInstance()で上手くインスタンスがコピーできてない 以上を踏まえ、原因としてmdcのインスタンスを渡す際にメモリを誤開放していることが考えられる。 » – – • 使うネットワークによって、GSEヘッダが上手く読み込まれないときがある →帯域が問題 – – 自前のMobile Wifi経由で発生 研究室内ネットワークでは動く PWO 平均Energy Deposit PWO一本一本のΔEのレートを求める(軌道1周) • 方法 – 使用データ:MJD55501、EPICS all particles – teleout.ccを改造し、各PWO毎に1秒毎のΔEのsumを 出力 • getPwoEnergyDeposit.cc 出力を確認. (140411 15:06) – 100TeVの粒子の影響により、甚大なΔEがちらほら確認できる →1TeV以上のイベントを一旦cut 5406秒分のデータを作成 – レートの絵を描く • GetPwoEDepRate.C – MIPの値は2GeVのミューオンのΔEより(赤池さん) 0.0204673 GeV / 1PWO – 192本まとめてDraw QL Hit情報調査 • 今日の目標:QLのアルゴリズムの理解 • 内容 – まずICS経由のデータを50秒生成 • EPICS all 55501 psingle Hit情報バグ • QLでイベントビューアを呼び出す際に、トリガー 情報と、LDHit情報が一致しない • 原因調査 – 使用データ:EPICS all particle, 55501 1周分のデータ, Header:IEEE – telereadによりイベント情報を目で確認 =>特に異常なイベントはなし – HEでトリガーされた全イベントに対し、LD TASC HE Hit 情報が0になっていないか確認 =>全て1になっていた。 ここで確認した変数をQLで読み込んでい るので、バグの原因ではなさそうです。
© Copyright 2024 ExpyDoc