進捗報告 M2 下村 140614 地上系会議 内容 • MDCSimulatorのMerge(Auxiliary) • QLOrbISSの作成 • ToDo MDCSimulatorのMerge(Auxiliary) • MDCSimulatorをマージし、補助データの読み書きに対応 した – 動作テスト • sock_ifでのデータ受け渡し:ok • 力石ルーチンから取り出したLat,Lonと入力した値を比較 → 小数第6位の精度で一致 (altは第3位) 入力 Lat < < < < < < < < < < < < < < < < < < < < 167.9340000 168.0000000 168.0650000 168.1310000 168.1970000 168.2620000 168.3270000 168.3930000 168.4580000 168.5230000 168.5880000 168.6530000 168.7180000 168.7830000 168.8480000 168.9120000 168.9770000 169.0410000 169.1060000 169.1700000 Lon Alt -40.4380000 -40.4000000 -40.3620000 -40.3240000 -40.2860000 -40.2480000 -40.2100000 -40.1720000 -40.1340000 -40.0960000 -40.0580000 -40.0200000 -39.9810000 -39.9430000 -39.9050000 -39.8660000 -39.8280000 -39.7890000 -39.7510000 -39.7120000 6740.1800000 6740.1800000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.1900000 6740.2000000 6740.2000000 6740.2000000 6740.2000000 6740.2000000 6740.2000000 6740.2000000 出力 Lat > > > > > > > > > > > > > > > > > > > > 167.9339977 168.0000047 168.0650008 168.1309940 168.1970010 168.2619971 168.3270068 168.3930001 168.4579962 168.5230059 168.5880020 168.6529981 168.7179942 168.7830039 168.8480000 168.9119989 168.9769949 169.0409938 169.1060035 169.1700024 Lon -40.4379984 -40.4000014 -40.3620008 -40.3240005 -40.2859996 -40.2479995 -40.2099995 -40.1720002 -40.1340002 -40.0960001 -40.0579997 -40.0199996 -39.9809986 -39.9430008 -39.9050020 -39.8659978 -39.8280013 -39.7890005 -39.7509994 -39.7119984 Alt 6740.1798865 6740.1799633 6740.1897508 6740.1901210 6740.1903577 6740.1900683 6740.1894309 6740.1897869 6740.1900155 6740.1899643 6740.1896313 6740.1904130 6740.1902104 6740.2004488 6740.1999889 6740.2002023 6740.2000590 6740.2005899 6740.1995777 6740.1999020 QLOrbISSの作成 • QLTrendを流用して、高度400kmでのCALETの位置のモニ ターを作成した – 機能:CALETの位置 通過した軌跡(default:1000sec) 通過したGridのRateをプロット(画像はSingle) Todo • QLOrbISSの改善 – 軌道予測の追加(SGP4)→探したが上手く行かず – カウントレートの選択 – カラースケールの追加 • QLの全天モニターを作る END ToDo • QLの作成案を練る • Level0データの検証 Validate Level0 • TcpServerEXMainを流用してLevel0データの検証用プロ グラムを作成した – 目的:Level0データのチェック – UKey2/EventIDの連続性、チェックサムの確認等 Level0データ GSEヘッダ データ部 GSEヘッダ データ部 GSEヘッダ データ部 ・ ・ ・ 実行例 エラーがあるとここ にコメントが出る Telemetry Data File:HighLat/CR_MJD55501_00000_00050.bin.ics TcpServerEXMain ... secDiff=1060163644 1402048452 1122 1 1 0 0 341884808 1 1 1 0 0 1402048452 70 1 1 0 0 341884808 2 10 1 0 0 1402048452 182 1 1 0 0 341884808 3 6 0 0 1 1402048452 1478 1 1 0 0 341884808 4 6 0 1 1 1402048452 498 1 1 0 0 341884808 5 6 1 2 1 [CheckSum 1402048452 70 1 1 0 0 341884808 6 10 1 0 1 1402048452 182 1 1 0 0 341884808 7 6 0 0 2 1402048452 1478 1 1 0 0 341884808 8 6 0 1 2 1402048452 106 1 1 0 0 341884808 9 6 1 2 2 [CheckSum 1402048452 70 1 1 0 0 341884808 10 10 1 0 2 1402048452 182 1 1 0 0 341884808 11 6 0 0 3 1402048452 1454 1 1 0 0 341884808 12 6 1 1 3 [CheckSum 1402048452 70 1 1 0 0 341884808 13 10 1 0 3 1402048452 182 1 1 0 0 341884808 14 6 0 0 4 1402048452 1478 1 1 0 0 341884808 15 6 0 1 4 1402048452 1386 1 1 0 0 341884808 16 6 1 2 4 [CheckSum 1402048452 70 1 1 0 0 341884808 17 10 1 0 4 1402048452 182 1 1 0 0 341884808 18 6 0 0 5 1402048452 1306 1 1 0 0 341884808 19 6 1 1 5 [CheckSum 1402048452 70 1 1 0 0 341884808 20 10 1 0 5 OK 0000] OK 0000] OK 0000] OK 0000] OK 0000] QLSummary修正 • ボタンを追加+見栄えの修正 CALET ISS軌道データ作成 (EPICS) • /nfs/RAID/home/asaoka/calet/TelemetrySim にて環境変数をセット – • • $source setenv.sh [Data set] /nfs/RAID/home/asaoka/calet/TelemetrySim/CALET_ISS にてISS軌道CALET 入力データを生成 – $./telesim [-d MJD Date] [-s Start Sec] [-p Proc Sec] [-n Sec Div] – データ生成ディレクトリ ~/work/TelemetrySim/data/CRSample/[Data Set]/M30/ → CR_MJD[Date]_[Sec]_[Div].dat – 入力データとして、データ・セットに対応するATMNC3データが必要。 → ~work/TelemetrySim/data/CRMap参照 /nfs/RAID/home/asaoka/calet/TelemetrySim/CALET_Ana/trunk にてEPICS データを生成 – $./epicsSGE.py [-d Data set] [-j MJD Date] [-s Start Sec] [-p Proc Sec] [-f Sec Div] [-r Retry] – データ生成ディレクトリ ~/work/TelemetrySim/data/EPICS/[Data Set]/M30/ → CR_MJD[Date]_[Sec]_[Div].root ソケット/QL プログラム修正 • ソケットプログラムのオプション追加 – “-c”:パケットに記述された時間を付け替えない • QLEvDisp、QLSummary、QLSumTextのルーチンの 改善 – 問題点:実行時に激しいメモリリーク 原因 :UniqueKey3が1,6以外のデータで、MDCSimulator のインスタンスをdeleteしてなかった – 修正後:激しいメモリリークは解消 ただし、微妙に残っているので今後の課題。 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