空蟬基本Python関数リファレンス

概要

空蟬基本Python関数とは、空蟬で実装されているデータ処理(イベントデータのヒストグラム化、データコンテナの扱い、共通の補正など)を行うためにPythonで作成された関数群を呼ぶ。一般に各装置で使用される関数、特にSequenceEditorで表示されるファサード関数は、この基本関数からの抜粋したもの、もしくは基本関数を組み合わせたり利用して作成したものとなる。

また、独自のファサード関数を作ったり、スクリプトを自作する場合にも参照できる。

基本関数の使い方

本節で示す関数は基本関数として用意されているものであり、実際にユーザーが直接利用することはないと思われる。しかし新しくファサード関数を作る際にこれらの関数を利用することもあるので、空蟬環境において直接実行する方法を示しておく。

>>> import ana.Reduction.BaseCommands as BC
>>> ec = BC.AverageAll( dat )
など

また、基本関数のうち、それぞれの装置で使用頻度の高いものは、あらかじめファサード Cmm モジュールにも登録されているので、それを使うことも可能である。

>>> import Cmm
>>> ec = Cmm.GetNeunetHist( \373", "hw,45.56,-4.0,40.0,0.2" )
など。

基本関数一覧

共通データ処理

関数

説明

AverageAll

与えたElementContainerMatrix内の全てのPixelの平均を取り一つのElementContainerに収める

CalcPhi

ヒストグラム化された全Pixelのデータの位置情報からそれぞれのPixelのPolar角とAzimath角を 計算し収める

DoMask

与えたマスクファイルを用いてマスク処理を行う

DetectorEffi

検出器効率補正を行う

GetBeamCurrentFromECM

ElementContainerMatrixからその測定中のProton Current [TP]の総和を返す

GetHistDQconstNeunetPsd

中性子イベントデータをdQ constantのヒストグラムに変換する

GetHistDTconstGatenetMon

中性子モニターのイベントデータをdT constantのヒストグラムに変換する

GetHistDTconstNeunetPsd

中性子イベントデータをdT constantのヒストグラムに変換する

GetHistToDTconstGatenetMon

中性子モニターのイベントデータをdT/T constantのヒストグラムに変換する

GetHistToDTconstNeunetPsd

中性子イベントデータをdT/T constantのヒストグラムに変換する

GetNeunetHist

与えたパラメータでイベントデータを処理しヒストグラムに変換する

GetPH

PSDのヒストグラムから検出器の波高値を取り出す

NormByBeam

イベントデータをヒストグラム化したElementContainerMatrixに対し、与えた測定時刻情報から Proton Currentで規格化する

NormByBeamCurrent

イベントデータをヒストグラム化したElementContainerMatrixに対し、 Proton Currentで規格化する

PickUpRegion

ElementContainerMatrixから特定の検出器領域を抜き出す

SolidAngleCorrection

立体角補正を行う

SumOfPixel

ElementContainerMatrixから指定した検出領域の総和のヒストグラムを返す

SumOfTOF

ElementContainerMatrixから指定した検出器内のPixelに対し、Time-of-Flight方向の和を取り 横軸Pixel-縦軸総和のElementContainerを返す

getBeamCurrent

与えた時刻情報からその期間中のProton Current [TP]の総和を返す

共通データファイル入出力処理

関数

説明

GetDataFromNeXus

NeXusフォーマットファイルからデータを取り出す

LoadDataFromDump

Dumpフォーマットファイルからデータを取り出す

LoadDataFromSPE

SPEフォーマットファイルからデータを変換しElementContainerMatrixとして取り出す

LoadDataFromSrlz

Manyoライブラリシリアライズフォーマットからデータを取り出す

OutPutAllPixelToTxt

与えたElementContainerMatrix内の全データをテキストファイルに書き出す

SaveDataToDump

与えたElementContainer, -Array, -MatrixのデータをDumpフォーマットに書き出す

SaveDataToNVASQ

与えたElementContainerMatrixデータをNovaSQ用のフォーマット(NeXus)に変換し書き出す

SaveDataToNeXus

与えたElementContainerMatrixデータをNeXusフォーマットに書き出す

SaveDataToSrlz

与えたElementContainer, -Array, -MatrixデータをManyoライブラリシリアライズフォーマット に書き出す

SaveDataToSPE

与えたElementContainerMatrixデータをSPEフォーマットに変換し書き出す

非弾性散乱用処理

関数

説明

BoseFactCorrEC

ボーズ因子の補正をElementContainerに対し行う

BoseFactorCorrection

ボーズ因子の補正を行う

FlexCalc

エネルギー遷移変換後のデータに対し、与えた自由な式で強度の補正を行う

GetEi

与えたElementContainerMatrixデータの指定したPixelをビームモニターと見なし 入射エネルギーを計算する

GetEiFromEvent

指定したPixelをビームモニターと見なしイベントデータから最小限のヒストグラム化を行い、 入射エネルギーを計算する

KiKfCorrection

ki/kf補正を行う

MakeWhiteVanCorr

(未実装)White Vanadiumの測定データから補正用データを作成する

SavePowderDataToText

Power平均を行ったデータをテキストファイルに書き出す

ToPowder

ElementContainerMatrixデータのPowder平均をとる

TofToEnergyTransfer

TOFのヒストグラムをエネルギー遷移のデータへ変換する

TofToEnergyTransferStrict

TOFのヒストグラムをエネルギー遷移のデータへ変換する(明確なエネルギー範囲を指定可)

VisContMOutputFigure

VisualContM上でのスライスを行い画像を保存する

VisContMOutputFileByPhi

VisualContM上でのスライスを行い、D4Matrix用のバイナリファイルを作成する

WhiteVanCorr

(未実装)White Vanadiumの補正用データでの補正

装置用処理・その他

関数

説明

AppendRawDataFiles

複数のRaw Data(イベントデータ)を結合し、別データとして保存する

CheckDataProcess

データ処理の履歴管理用関数

CopyData

装置において、DAQ PC上のRaw Dataを解析PCへ集約・コピーする

CopyIroha2Params

装置において、IROHA2 PC上のLog, Paramデータを解析PCへ集約・コピーする

MakeRunList

装置において、Run No, 測定時間、温度、ゴニオ角度などの情報をリスト化する

共通データ処理関数

AverageAll

与えたElementContainerMatrix内の全てのPixelの平均を取り一つのElementContainerに収める。

AverageAll( dat, maskfile="None" )

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

maskfile

文字列 (yyy.txt/xxx.xml)

マスクファイル名。内部でDoMask関数を実行する。 使用しない時は None を与える。 詳細は「DoMask」関数リファレンスを参照のこと。

戻り値

ElementContainer

CalcPhi

ヒストグラム化された全Pixelのデータの位置情報からそれぞれのPixelのPolar角とAzimath角を計算し収める。

CalcPhi(dat)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

戻り値

無し

(与えられたElementContainerMatrixの中身に追記)

DoMask

与えたマスクファイルを用いてマスク処理を行う。マスクファイルのフォーマットなど詳細は、別の章で行う( 「空蟬で使用するマスク処理について」 )。

DoMask(dat,filename="mask.txt")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

filename

文字列 (yyy.txt/xxx.xml)

マスクファイル名。このファイルは、 UTSUEMI_USR_DIR ( /opt/mlfsoft/python-utsusemi/XXX )内の ana/xml フォルダ内 もしくは、UTSUSEMI_USR_PRIV_HOME/ana/xml( ~/ana/xml )に存在しなければ ならない。 使用しない時は None を与える。 フォーマットの詳細は「空蟬で使用するマスク処理について」を参照のこと。

戻り値

無し

(与えられたElementContainerMatrixの中身が置きかわる)

DetectorEffi

検出器補正を行う。検出器の構成情報はDetectorInfo.xmlに記述するものを使うので、それを引数で指定する必要がある。将来的には融合する。

DetectorEffi(dat, detInfo_file="DetectorInfo_Det.xml", det_name="SUS304-3He-PSD")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

detInfo_file

文字列

検出器の構成情報のあるDetectorInfoファイルを指定する。

det_name

文字列

検出器の構成情報から補正に用いる検出器の定義名を指定する。

戻り値

無し

(与えられたElementContainerMatrixの中身が置きかわる)

GetBeamCurrentFromECM

ElementContainerMatrixからその測定中のProton Current [TP]の総和を返す。

GetBeamCurrentFromECM(dat,offset_sec=0.0,isCT8Neutron=False)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

offset_sec

実数

Proton Currentを計算するための測定時間はヒストグラムデータのヘッダ情報を 用いるが、それがずれていた場合にそのオフセット時間を[秒]で補正する。 通常は、0.0。データの測定時間にオフセット時間を加えたものを真の時刻とする。

isCT8Neutron

bool (True or False)

使用するProton Monitorのうち、ミュオンターゲットの影響を考慮した モード(CT8Neutron)を利用するときにTrueとする。

戻り値

実数

ProtonCurrentの総数。

GetHistDQconstNeunetPsd

中性子イベントデータをdQ constantのヒストグラムに変換する。

GetHistDQconstNeunetPsd( runNo=0,Qrange="0.1 10.0",deltaQ=0.1,detRange="-1 -1",NumOfPixel=Def_NumOfPixel,timeRange="-1 -1",frameBoundary=0.0, inVect="0.0 0.0 1.0" )

パラメータ

フォーマット

説明

runNo

整数

与えるElementContainerMatrix

QRange

文字列

ヒストグラム上のQの範囲。Qの最小値と最大値をスペース区切りで表記。 ( <Qmin> <Qmax> )

deltaQ

実数

Qのbin幅。

detRange

文字列

検出器の範囲。DetIDの範囲(最小値と最大値)をスペース区切りで表記。

NumOfPixel

整数

1検出器(PSD)あたりのPixel数。

timeRange

文字列

時間スライスの指定。時間の範囲(最小値と最大値)をスペース区切りで表記。 単位は測定開始時刻からの秒数。

frameBoundary

実数

セカンドフレーム使用時の境界となるTOF値。

inVect

文字列

入射中性子の入射ベクトル。ベクトルをVx Vy Vzの成分(大きさは適当)で表記。 単位はmm。スペース区切りで表記。

戻り値

ElementContainerMatrix

ElementContainerMatrix。

GetHistDTconstGatenetMon

中性子モニターのイベントデータをdT constantのヒストグラムに変換する。

GetHistDTconstGatenetMon( runNo=0,tofRange="0.0 40000.0",binTOF=10.0,detRange="-1 -1",NumOfPixel=4,timeRange="-1 -1",frameBoundary=0.0 )

パラメータ

フォーマット

説明

runNo

整数

与えるElementContainerMatrix

tofRange

文字列

ヒストグラム上のTOFの範囲。TOFの範囲(最小値と最大値)スペース区切りで表記。 ( <TOFmin> <TOFmax> )

binTOF

実数

TOF方向のbin幅。

detRange

文字列

検出器の範囲。DetIDの範囲(最小値と最大値)をスペース区切りで表記。

NumOfPixel

整数

1検出器(PSD)あたりのPixel数。

timeRange

文字列

時間スライスの指定。時間の範囲(最小値と最大値)をスペース区切りで表記。 単位は測定開始時刻からの秒数。

frameBoundary

実数

セカンドフレーム使用時の境界となるTOF値。

戻り値

ElementContainerMatrix

ElementContainerMatrix。

GetHistDTconstNeunetPsd

中性子イベントデータをdT constantのヒストグラムに変換する。

GetHistDTconstNeunetPsd( runNo=0,isTimeFoc=True,tofRange="0.0 40000.0",binTOF=10.0,detRange="-1 -1",NumOfPixel=Def_NumOfPixel,timeRange="-1 -1",frameBoundary=0.0 )

パラメータ

フォーマット

説明

runNo

整数

与えるElementContainerMatrix

isTimeFoc

bool (True or False)

ヒストグラム化時に、Time Focusingを行うかどうか。

tofRange

文字列

ヒストグラム上のTOFの範囲。TOFの範囲(最小値と最大値)スペース区切りで表記。 ( <TOFmin> <TOFmax> )

binTOF

実数

TOF方向のbin幅。

detRange

文字列

検出器の範囲。DetIDの範囲(最小値と最大値)をスペース区切りで表記。

NumOfPixel

整数

1検出器(PSD)あたりのPixel数。

timeRange

文字列

時間スライスの指定。時間の範囲(最小値と最大値)をスペース区切りで表記。 単位は測定開始時刻からの秒数。

frameBoundary

実数

セカンドフレーム使用時の境界となるTOF値。

戻り値

ElementContainerMatrix

ElementContainerMatrix。

GetHistToDTconstGatenetMon

中性子モニターのイベントデータをdT/T constantのヒストグラムに変換する。

GetHistToDTconstGatenetMon( runNo=0,tofRange="0.0 40000.0",racio=0.01,detRange="-1 -1",NumOfPixel=4,timeRange="-1 -1",frameBoundary=0.0 )

パラメータ

フォーマット

説明

runNo

整数

与えるElementContainerMatrix

tofRange

文字列

ヒストグラム上のTOFの範囲。TOFの範囲(最小値と最大値)スペース区切りで表記。 ( <TOFmin> <TOFmax> )

retio

実数

deltaT/T Constの値を指定する。

detRange

文字列

検出器の範囲。DetIDの範囲(最小値と最大値)をスペース区切りで表記。

NumOfPixel

整数

1検出器(PSD)あたりのPixel数。

timeRange

文字列

時間スライスの指定。時間の範囲(最小値と最大値)をスペース区切りで表記。 単位は測定開始時刻からの秒数。

frameBoundary

実数

セカンドフレーム使用時の境界となるTOF値。

戻り値

ElementContainerMatrix

ElementContainerMatrix。

GetHistToDTconstNeunetPsd

中性子イベントデータをdT/T constantのヒストグラムに変換する。

GetHistToDTconstNeunetPsd( runNo=0,isTimeFoc=True,tofRange="0.0 40000.0",racio=0.01,detRange="-1 -1",NumOfPixel=Def_NumOfPixel,timeRange="-1 -1",frameBoundary=0.0 )

パラメータ

フォーマット

説明

runNo

整数

与えるElementContainerMatrix

isTimeFoc

bool (True or False)

ヒストグラム化時に、Time Focusingを行うかどうか。

tofRange

文字列

ヒストグラム上のTOFの範囲。TOFの範囲(最小値と最大値)スペース区切りで表記。 ( <TOFmin> <TOFmax> )

retio

実数

deltaT/T Constの値を指定する。

detRange

文字列

検出器の範囲。DetIDの範囲(最小値と最大値)をスペース区切りで表記。

NumOfPixel

整数

1検出器(PSD)あたりのPixel数。

timeRange

文字列

時間スライスの指定。時間の範囲(最小値と最大値)をスペース区切りで表記。 単位は測定開始時刻からの秒数。

frameBoundary

実数

セカンドフレーム使用時の境界となるTOF値。

戻り値

ElementContainerMatrix

ElementContainerMatrix。

GetNeunetHist

与えたパラメータでイベントデータを処理しヒストグラムに変換する。 イベントデータのヒストグラム化を行うための総合的な関数である。イベントデータをヒストグラム化するために必要な設定(ヒストグラム軸設定、検出器の範囲設定やディスクリ値の変更など)のうち、もっとも初期のころから実装していた機能をまとめて行えるようにした。これまでのいろいろなヒストグラム化にまつわる関数はすべてこれで置き換える方針。これまで個別に設定していたパラメータを設定ごとにまとめて指定(文字列として)することで、トータルのパラメータの個数を減らした。この関数も実際にはもう少し用途に特化した関数に組み込む予定(DR.GetDataOfMonochroEi2のように)なので、ユーザーが直接これを使うことは無いと思われる。

GetNeunetHist( <runNo>, <HistParam>, <DetRange>, <DetParam>, <TimeRange>, <FrameInfo>, <MaskInfo>, <CaseInfo>, <BGInfo>, <TofShift>, <AnaMode>, <ParamFiles>, <Options> )

簡単な使用例

from ana.Reduction.BaseCommands import GetNeunetHist
DAT = GetNeunetHist( "1234", "hw,45.56,-4.0,45.0,0.2", "All" )

推奨される使用例(パラメータ名を具体的に示す)

DAT = GetNeunetHist( runNo="1234-1236", HistParam="hw,45.56,-4.0,45.0,0.2", DetRange="All" )

指定パラメータ

パラメータ

フォーマット

説明

runNo

文字列(下記参照)

ヒストグラム化するRun numberを指定する。

HistParam

文字列(下記参照)

作りたいヒストグラム(軸)の情報

DetRange

文字列(下記参照)

使用する検出器の範囲とPixel数設定

DetParam

文字列(下記参照)

検出器の種類とPulse Height設定

TimeRange

文字列(下記参照)

使用する時間情報

FrameInfo

文字列(下記参照)

使用するフレーム情報

MaskInfo

文字列(下記参照)

検出器に対するマスク処理設定

CaseInfo

文字列(下記参照)

CaseInfoファイルの指定(0.3.6より実装)

BGInfo

文字列(下記参照)

各種バックグラウンドの指定(現状は時間依存性のTOFバックグラウンドのみ)

TofShift

文字列(下記参照)

TOF原点をLambdaに応じてシフトさせる場合に用いる(現状BL11用のみ)

AnaMode

文字列(下記参照)

使用するWiringInfoとDetectorInfoの組み合わせのパターンを指定する

ParamFiles

文字列(下記参照)

WiringInfoとDetectorInfoを個別に与える

Options

文字列(下記参照)

その他の設定

戻り値

ElementContainerMatrix

パラメータのフォーマット

それぞれのパラメータのフォーマットを以下に示す。

runNo

runNoを指定する。単独、カンマ区切り、範囲(ハイフンかコロンで繋ぐ)で指定できる。単独列挙と範囲指定はカンマ区切りで混在できる。

フォーマット

方法

<runNo>

単独指定

1234

<runNo1>,<runNo2>,...

個別に列挙指定

1001,1512,1330

<runNo1>:<runNo2>,...

コロンもしくは

ハイフンで範囲指定

1000:1020,1500:1330

<runNo1>-<runNo2>,...

1000-1020,1512-1330

HistParam

フォーマット

ヒストグラムの横軸

tof, <min>, <max>, <delta>

TOF(Δt 一定)

tof, 0, 40000, 100

rtof, <min>, <max>, <delta>

TOF(Δt/t 一定)

tof, 100, 40000, 0.5

tf-tof, <min>, <max>, <delta>

TOF(Δt 一定 with Time focusing)

tf-tof, 0, 40000, 10

tf-rtof, <min>, <max>, <racio>

TOF(Δt/t 一定 with Time focusing)

tf-rtof, 100, 40000, 0.5

lambda, <min>, <max>, <delta>

波長(Δλ 一定)

lambda, 0.7, 7.4, 0.1

rlambda, <min>, <max>, <racio>

波長(Δλ/λ 一定)

rlambda, 0.7, 7.4, 0.05

energy, <min>, <max>, <delta>

エネルギー

energy, 1.0, 100.0, 0.5

q, <min>, <max>, <delta>

運動量遷移

q, 0.1, 5.0, 0.05

hw, <Ei>, <min>, <max>, <delta>

エネルギー遷移

hw, 45.56, -4.0, 45.0, 0.2

d, <min>, <max>, <delta>

d値

d, 0.1, 5.0, 0.1

DetRange

フォーマット

意味

All

全部の検出器をデフォルトで用いる

All

All:<num>

1本あたりのPixel数を<num>に変更し、全部の検出器を用いる。 セパレータにコロンを使用。

All:500

<first-Id> - <last-Id>

<first-Id>から<last-Id>までの検出器を用いる。 ハイフンをしきりとする。

32-64

<first-Id> - <last-Id>:<num>

<first-Id>から<last-Id>までの検出器を、Pixel数<num>で用いる。 ハイフンとコロンをしきりとする。

32-64:240

<first-Id> - <last-Id>,

<first-Id> - <last-Id>,

複数の検出器領域を一度に指定する。カンマ区切り。

32-64,102-148

<first-Id> - <last-Id>:<num>,

<first-Id> - <last-Id>:<num>,

複数の検出器領域をPixel数とともに指定する。カンマ区切り。

32-64:500,102-148:250

DetParam

フォーマット

意味

<DetType>

<DetType>で指定した検出器のヒストグラム化を行う。 現状、以下の二つだけ指定できる。

PSD : PSD

MON : N2 monitor

PSD

psd

<DetType>[<LLD>:<HLD>]

上記に加え、Pulse Heightの指定を行う。<LLD>のみ書くことも可能。

PSD[550:4096]

<DetType>-PH

<DetType>で指定した検出器のヒストグラム化を行うが、 同時にPulse Heightの情報も作成する。

これは実際にヒストグラム化されたイベントのPulse Heightを収集する。

PSD-PH

psd-ph

<DetType>-PH[<LLD>:<HLD>]

上記に加え、Pulse Heightの指定を行う。<LLD>のみ書くことも可能。

PSD-PH[550:4096]

TimeRange

フォーマット

意味

All

全時間を使用する

All

<startTime>,<endTime>

<startTime>から<endTime>までの時間を切り出して使用する。 単位は秒。カンマ区切り。

3600, 7200

<startTime>,<endTime>

<startTime>から<endTime>までの時刻を切り出して使用する。 時刻のフォーマットは下記。カンマ区切り。(未実装)

YYYY/MM/DD hh:mm:ss

2014/01/01 10:00:00, 2014/01/02 12:00:00

FrameInfo

フォーマット

意味

None

指定なし

None

<frame_No>,<boundary>

<frame_No>番目のフレームを,<boundary>のTOFを境目として利用(非推奨)

2, 9000

<unit>,<boundary>

<unit>:<boundary>

単位 <unit> で指定された値 <boundary> を境目として利用する

(<unit>: tof [micro-sec], lambda [1/A], energy [meV], ei [meV] )

( version 0.3.6 以降) セパレータはカンマかコロン

tof, 9000

energy:50.0

MaskInfo

フォーマット

意味

NoFile (Noneでも良い)

マスクファイルを使用せず、かつTOF方向のマスクも使用しない時。

NoFile , None

NoFile,<tof1>-<tof2>

マスクファイルは使用しないが、TOF方向のマスクを使用する場合に用いる。 範囲をハイフンでつなぐ。複数のマスク領域がある場合は、カンマでつなぐ。

None,0.0-1500.0

<Path/to/MaskFile>

<Path/to/MaskFIle>が完全なパス指定であれば、そのファイルを使用する。 ファイル名だけであれば、

${UTSUSEMI_USR_DIR}/ana/xml ( /opt/mlfsoft/python-utsusemi/XXX/ana/xml )

${UTSUSEMI_USR_PRIV_HOME}/ana/xml ( ~/ana/xml )

を探す。最新のmask.xmlも以前のmask.txtも使用可能。

mask.xml ,mask.txt

<MaskFile>,<tof1>-<tof2>

マスクファイルを指定し、かつTOF方向のマスクを使用する場合に用いる。

mask.xml,0.0-100.0,200.0-1000.0

CaseInfo

フォーマット

意味

None

指定なし

<Path/to/CaseInfoFile>

<Path/to/CaseInfoFIle>が完全なパス指定であれば、そのファイルを使用する。 ファイル名だけであれば、

${UTSUSEMI_USR_DIR}/ana/xml ( /opt/mlfsoft/python-utsusemi/XXX/ana/xml )

${UTSUSEMI_USR_PRIV_HOME}/ana/xml ( ~/ana/xml )

を探す。

CaseInfo.xml

BGInfo

フォーマット

意味

TIMEDEP:None

指定なし

TIMEDEP:<tof1>-<tof2>

<tof1>-<tof2>で指定したTOF領域を時間依存性のあるバックグランドとみなし 全Pixelの全TOF領域から差し引く補正を行う。

TIMEDEP:35000-39999

TofShift

フォーマット

意味

None

TOF 原点シフトを行わない場合。

None

<ptnId> [,A1,A2,A3,A4,A5]

TOF原点シフトを行う場合に用いる。TOFの原点シフトは波長依存の式で表されている。

ptnId = 0 : 使用しない(Noneと同じ)

ptnId = 1A1/(exp(-A2*(lambda-A3))+A4)+(A5*lamda) [BL11 only]

(Default A1=5.0, A2=8.464, A3=2.08765, A4=1.23477, A5=5.32657)

ptnId > 1 : 現状モデルなし

1,5.0,8.464,2.0,1.3.5.4

AnaMode

AnaModeは、ヒストグラム化の時に使用するWiringInfoとDetectorInfoのひな形をペアとして、簡単にひな形を変更するのに使用する。このひな形のペアは、${UTSUSEMI_USR_DIR}/ana/xml/environ_ana.xmlに記載してある必要がある。

また、environ_ana.xmlの情報を上書きする形で直接パラメータファイル(WiringInfoやDetectorInfo)を指定することもできる。( 0.3.6より使用可能)

フォーマット

意味

<mode>

モードの番号

0

<mode>,-,-

<mode>,<WiringInfo>,<DetectorInfo>

<mode>によるenviron_ana.xmlの情報に上書きする形で 直接パラメータファイルを指定する。 ファイル名が-(ハイフン)の時はenviron_ana.xmlと<mode>で 決定される決まるファイルを利用する。 どちらかだけがハイフンでも良い。

完全なパス名であればそれを利用する。 ファイル名しかない場合、以下のように探索する。

カレントディレクトリ

${UTSUSEMI_USR_DIR}/ana/xml ( /opt/mlfsoft/python-utsusemi/XXX/ana/xml )

${UTSUSEMI_USR_PRIV_HOME}/ana/xml ( ~/ana/xml )

0,-,-

0,WiringInfo.xml,-

0,WiringInfo,DetectorInfo.xml

Options

0.3.6より使用可能。主に上記以外のオプションを設定できる。オプションの与え方は、 <KEY>:<VALUE> で与え、それらをカンマ区切りで並べることが可能である。なお与えるパラメータは大文字小文字を区別しない(例: ADDTOFBIN:TRUEは、AddTofBin:Trueでも良い)

フォーマット

意味

None

指定なし

None

ISCHECKPULSEID:<bool>

イベントデータファイル間のそれぞれのPulseIdに整合性があることを チェックするかどうかを指定する。<bool>はTrue(デフォルト) かFalse。

ISCHECKPULSEID:False

L1:<float>

L1(モデレータから試料位置までの距離)を[mm]で与える。デフォルト値は DetectorInfoに記述されている値であるが、この値を変更したいときに使用。

L1:18035.0

SX:<float>

試料の位置が装置座標系の原点にないときに設定する。試料の位置を座標ごとに 与える。試料位置のデフォルトは(0.0,0.0,0.0)であるが、例えばZ方向に上流に 5.0 mm ずれているのなら、"SZ:-5.0" だけを指定すれば良い。 (注:試料の座標を指定してもL1の値は変わらないので、必要に応じてL1も変更 すること)

SX:1.0, SZ:-5.0

SY:<float>

SZ:<float>

ADDTOFBIN:<bool>

TOF以外(hwなど)でのヒストグラム化の時にTOF情報もPixelごとのデータ (ElementContainer)に含めるかどうかを指定する。 <bool>はTrue(デフォルト) かFalse。(0.3.6_r1143以降)

AddTofBin:False

例:

DAT = GetNeunetHist( runNo="1234", HistParam="hw,45.56,-4.0,45.0,0.2", Options="L1:18020.0,SZ:-5.0" )

具体的な使用例

  1. run numberが123のデータを、Ei=50.0 meV, hw= -5.0から48 meVまで0.1刻みでヒストグラム化したい場合

    from ana.Reduction.BaseCommands import GetNeunetHist
    DAT=GetNeunetHist("123","hw,50.0,-5.0,48.0,0.1")
    
  2. 1.の条件で、測定開始から10分(600秒)までのイベントデータのヒストグラム化を行いたい場合

    DAT=GetNeunetHist("123","hw,50.0,-5.,48.,0.1", "All","0,600")
    
    or
    
    DAT=GetNeunetHist("123","hw,50.0,-5.0,48.0,0.1", TimeRange="0,600" )
    

    パラメータは省略可能(デフォルト値が使用される)だが、それ以降のパラメータを個別に指定するには必ず「パラメータ名=値」という書き方をする必要がある。(Pythonのお作法)

  3. 1.の条件で、pulse heightの領域を 1200〜4096にしたい場合

    DAT=GetNeunetHist("1000","hw,50.0,-5.0,48.0,0.1", DetParam="psd,1200,4096" )
    
  4. run numberが234のデータで、横軸がd値(範囲0.5〜5.0,幅0.01)のヒストグラム化を行いたい場合

    DAT=GetNeunetHist("234","d,0.5,5.0,0.01")
    
  5. run numberが234のデータで、横軸がd値(範囲0.5〜5.0,幅0.01)のヒストグラム化の時のPulse Heightを確認したい場合

    from ana.Reduction.BaseCommands import GetNeunetHist, GetPH
    DAT=GetNeunetHist("234","d,0.5,5.0,0.01", DetParam="psd-ph")
    ECS = GetPH( DAT )
    

    —> 可視化ソフトウェアのM2Plotで確認可能

GetPH

PSDのヒストグラムから検出器の波高値を取り出す。

GetPH(dat, binSize=1)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix (PulseHeightの解析も行う設定でヒストグラム化)

binSize

整数

波高値の横軸のbin幅を指定する。

戻り値

ElementContainerArray

それぞれの検出器(PSD)の波高分布が個別のElementContainerに格納されている。

戻り値はそのままM2Plotで表示できる。

NormByBeam

イベントデータをヒストグラム化したElementContainerMatrixに対し、与えた測定時刻情報からProton Currentで規格化する。

NormByBeam(dat,start_day="2009/5/30", start_time="10:00:00", end_day="2009/5/30", end_time="11:00:00", factor=1.0, offset_sec=0.0, isCT8Neutron=False )

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

start_day

文字列

測定開始日。フォーマットは YYYY/MM/DD。

start_time

文字列

測定開始時刻。フォーマットは hh:mm:ss。

end_day

文字列

測定終了日。フォーマットは YYYY/MM/DD。

end_time

文字列

測定終了時刻。フォーマットは hh:mm:ss。

factor

実数

Proton Currentによる規格化の値をfactorで割る。 Proton Currentの値は大抵データの強度に対し大きすぎるので、 このfactorで規格化の値を割り、その値で強度を割る。割り戻しの値。 なお、負の値を入力すると、Proton Currentの値は用いず、入力値の絶対値で強度の 割り算(規格化)を行う。

offset_sec

実数

Proton Currentを計算するための測定時間はヒストグラムデータのヘッダ情報を 用いるが、それがずれていた場合にそのオフセット時間を[秒]で補正する。 データの測定時間にオフセット時間を加えたものを真の時刻とする。通常は、0.0。

isCT8Neutron

bool (True or False)

使用するProton Monitorのうち、ミュオンターゲットの影響を考慮した モード(CT8Neutron)を利用するときにTrueとする。

戻り値

無し

(与えられたElementContainerMatrixの中身が置きかわる)

NormByBeamCurrent

イベントデータをヒストグラム化したElementContainerMatrixに対しProton Currentで規格化する。

NormByBeamCurrent(dat,factor=1000.0,offset_sec=0.0,isCT8Neutron=False )

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

factor

実数

Proton Currentによる規格化の値をfactorで割る。 Proton Currentの値は大抵データの強度に対し大きすぎるので、 このfactorで規格化の値を割り、その値で強度を割る。割り戻しの値。 なお、負の値を入力すると、Proton Currentの値は用いず、入力値の絶対値で強度の 割り算(規格化)を行う。

offset_sec

実数

Proton Currentを計算するための測定時間はヒストグラムデータのヘッダ情報を 用いるが、それがずれていた場合にそのオフセット時間を[秒]で補正する。 データの測定時間にオフセット時間を加えたものを真の時刻とする。通常は、0.0。

isCT8Neutron

bool (True or False)

使用するProton Monitorのうち、ミュオンターゲットの影響を考慮した モード(CT8Neutron)を利用するときにTrueとする。

戻り値

無し

(与えられたElementContainerMatrixの中身が置きかわる)

PickUpRegion

ElementContainerMatrixから特定の検出器領域を抜き出す。

PickUpRegion(Target, PSD_min=1, PSD_max=1, Pixel_min=1, Pixel_max=1)

パラメータ

フォーマット

説明

Target

ElementContainerMatrix

与えるElementContainerMatrix

PSD_min

整数

検出器範囲の最小値(DetId)。

PSD_max

整数

検出器範囲の最大値(DetId)。

Pixel_min

整数

検出器範囲のPixel最小値(PixelNo)。

Pixel_max

整数

検出器範囲のPixel最大値(PixelNo)。

戻り値

ElementContainerMatrix

ElementContainerMatrix

SolidAngleCorrection

立体角補正を行う。

SolidAngleCorrection(dat,dS=-1.0)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

dS

実数

各Pixelの立体角をこの値で規格化する。-1.0の時はその装置のデフォルト値。

戻り値

無し

(与えられたElementContainerMatrixの中身が置きかわる)

SumOfPixel

ElementContainerMatrixから指定した検出領域の総和のヒストグラムを返す。

SumOfPixel(Target, PSD_min=1, PSD_max=1, Pixel_min=1, Pixel_max=1)

パラメータ

フォーマット

説明

Target

ElementContainerMatrix

与えるElementContainerMatrix

PSD_min

整数

検出器範囲の最小値(DetId)。

PSD_max

整数

検出器範囲の最大値(DetId)。

Pixel_min

整数

検出器範囲のPixel最小値(PixelNo)。

Pixel_max

整数

検出器範囲のPixel最大値(PixelNo)。

戻り値

ElementContainer

ElementContainer

SumOfTOF

ElementContainerMatrixから指定した検出器内のPixelに対し、Time-of-Flight方向の和を取り、横軸Pixel-縦軸総和のElementContainerを返す。

SumOfTOF(Target, PSD=1, tof_min=0, tof_max=40000)

パラメータ

フォーマット

説明

Target

ElementContainerMatrix

与えるElementContainerMatrix

PSD

整数

対象となる検出器(DetId)。

tof_min

実数

積算するTOF領域の最小値(PixelNo)。

tof_max

実数

積算するTOF領域の最大値(PixelNo)。

戻り値

ElementContainer

ElementContainer

getBeamCurrent

与えた時刻情報からその期間中のProton Current [TP]の総和を返す。

getBeamCurrent(start_day="2009/5/30", start_time="10:00:00", end_day="2009/5/30", end_time="11:00:00", offset_sec=0.0, isCT8Neutron=False )

パラメータ

フォーマット

説明

start_day

文字列

測定開始日。フォーマットは YYYY/MM/DD 。

start_time

文字列

測定開始時刻。フォーマットは hh:mm:ss 。

end_day

文字列

測定終了日。フォーマットは YYYY/MM/DD 。

end_time

文字列

測定終了時刻。フォーマットは hh:mm:ss 。

offset_sec

実数

Proton Currentを計算するための測定時間はヒストグラムデータのヘッダ情報を 用いるが、それがずれていた場合にそのオフセット時間を[秒]で補正する。 データの測定時間にオフセット時間を加えたものを真の時刻とする。通常は、0.0。

isCT8Neutron

bool (True or False)

使用するProton Monitorのうち、ミュオンターゲットの影響を考慮した モード(CT8Neutron)を利用するときにTrueとする。

戻り値

実数値

プロトン数を返す。 [TP(テラプロトン)]

共通データファイル入出力処理

GetDataFromNeXus

NeXusフォーマットファイルからデータを取り出す。

GetDataFromNeXus(path="./",filename="Sample.nx")

パラメータ

フォーマット

説明

path

文字列

NeXusファイルの入っているフォルダへの絶対パス。

filename

文字列

対象となるNeXusファイルの名前。

戻り値

ElementContainer, ELementContainerArray, ElementContainerMatrix

ElementContainer, ElementContainerArray, ElementContainerMatrix (NeXusファイルに含まれているデータに依存する。)

LoadDataFromDump

Dumpフォーマットファイルからデータを取り出す。

LoadDataFromDump(path="./",filename="Sample.dmp")

パラメータ

フォーマット

説明

path

文字列

Dumpファイルの入っているフォルダへの絶対パス。

filename

文字列

対象となるDumpファイルの名前。

戻り値

ElementContainer, ELementContainerArray, ElementContainerMatrix

ElementContainer, ElementContainerArray, ElementContainerMatrix (Dumpファイルに含まれているデータに依存する。)

LoadDataFromSPE

SPEフォーマットファイルからデータを変換しElementContainerMatrixとして取り出す。通常、SPEファイルは、yyyyy.SPEとyyyyy.PHXという二つのファイルによって構成されている。この関数では、両方のファイルの共通部分であるyyyyy部分を与えることで、両方のファイルを読み込む。

LoadDataFromSPE(path="./",spefile="Sample.spe", Ei=100.0, num_of_pixels=100, runNo="XXX000001")

パラメータ

フォーマット

説明

path

文字列

SPEファイル、及びPHXファイルの入っているフォルダへの絶対パス。

filename

文字列

対象となるSPEファイル名とPHXファイル名の拡張子を省いた部分。

戻り値

ElementContainerMatrix

ElementContainerMatrix。このファイルは空蟬のデータに変換済みであるので、 空蟬の可視化ソフトウェアなどで利用できる。

LoadDataFromSrlz

Manyoライブラリシリアライズフォーマットからデータを取り出す。

LoadDataFromSrlz(path="./",filename="Sample.srlz",DataType="ECM")

パラメータ

フォーマット

説明

path

文字列

シリアライズフォーマットファイルの入っているフォルダへの絶対パス。

filename

文字列

対象となるシリアライズフォーマットファイルの名前。

戻り値

ElementContainer, ELementContainerArray, ElementContainerMatrix

ElementContainer, ElementContainerArray, ElementContainerMatrix (シリアライズフォーマットファイルに含まれているデータに依存する。)

OutPutAllPixelToTxt

与えたElementContainerMatrix内の全データをテキストファイルに書き出す。それぞれのPixelは

runNNNNNN_DDD_PPP.txt NNNNNNは、Run Number, DDDはElementContainerMatrix内のElementContainerArrayの順番、PPPはElementContainerArray内のElementContainerの順番。 例としては、 run123456_123_456.txt となる

OutPutAllPixelToTxt(dat, filepath="")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

filepath

文字列

保存先のフォルダへの絶対パス。

戻り値

無し

SaveDataToDump

与えたElementContainer, -Array, -MatrixのデータをDumpフォーマットに書き出す。

SaveDataToDump(dat, path="./",filename="Sample.dmp")

パラメータ

フォーマット

説明

dat

ElementContainer, ELementContainerArray, ElementContainerMatrix

与えるElementContainer, -Array, -Matrix

path

文字列

保存先のフォルダへの絶対パス。

filename

文字列

保存ファイル名。命名ルールとして拡張子に.dmpをつけること。

戻り値

無し

SaveDataToNVASQ

与えたElementContainerMatrixデータをNovaSQ用のフォーマット(NeXus)に変換し書き出す。

SaveDataToNVASQ(dat, path="./",filename="Sample.nx",L1=25000.0,px=15000.0,py=0.0,pz=0.0)

パラメータ

フォーマット

説明

dat

ElementContainer,

与えるElementContainer

path

文字列

保存先のフォルダへの絶対パス。

filename

文字列

保存ファイル名。命名ルールとして拡張子に.nxをつけること。

L1

実数

L1 [mm]

px

実数

Pixel位置のx座標 [mm]

py

実数

Pixel位置のy座標 [mm]

pz

実数

Pixel位置のz座標 [mm]

戻り値

無し

SaveDataToNeXus

与えたElementContainerMatrixデータをNeXusフォーマットに書き出す。

SaveDataToNeXus(dat, name="Data",path="./",filename="Sample.nx")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

name

文字列

NeXusフォーマット内の所有者の名前。

path

文字列

保存先のフォルダへの絶対パス。

filename

文字列

保存ファイル名。命名ルールとして拡張子に.nxをつけること。

戻り値

無し

SaveDataToSrlz

与えたElementContainer, -Array, -MatrixデータをManyoライブラリシリアライズフォーマットに書き出す。

SaveDataToSrlz(dat, path="./",filename="Sample.srlz")

パラメータ

フォーマット

説明

dat

ElementContainer, ELementContainerArray, ElementContainerMatrix

与えるElementContainer, -Array, -Matrix

path

文字列

保存先のフォルダへの絶対パス。

filename

文字列

保存ファイル名。命名ルールとして拡張子に.dmpをつけること。

戻り値

無し

SaveDataToSPE

与えたElementContainerMatrixデータをSPEフォーマットに変換し書き出す。通常、SPEファイルは、yyyyy.SPEとyyyyy.PHXという二つのファイルによって構成されている。この関数では、両方のファイルの共通部分であるyyyyy部分を与えることで、両方のファイルを書き出す。

SaveDataToSPE(dat, path="./",filename="Sample"):

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

path

文字列

保存先のフォルダへの絶対パス。

filename

文字列

保存ファイル名。命名ルールとして拡張子はつけない。

戻り値

無し

非弾性散乱用処理

BoseFactCorrEC

ボーズ因子の補正を行う。対象は一つのPixelのデータElementContainer。

BoseFactCorrEC(dat,T=300.0)

パラメータ

フォーマット

説明

dat

ElementContainer

与えるElementContainer

T

実数

ボーズ因子補正に用いる温度[K]

戻り値

無し

(与えられたElementContainerの中身が置きかわる)

BoseFactorCorrection

ボーズ因子の補正をElementContainerMatrixに対し行う。

BoseFactorCorrection( dat,T=300.0)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

T

実数

ボーズ因子補正に用いる温度[K]

戻り値

無し

(与えられたElementContainerMatrixの中身が置きかわる)

FlexCalc

エネルギー遷移変換後のデータに対し、与えた自由な式で強度の補正を行う。

FlexCalc(dat,Intensity="",Error="")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

Intensity

文字列

強度を補正する式。フォーマットは下記。

Error

文字列

エラーを補正する式。フォーマットは下記。

戻り値

ElementContainerMatrix

補正を終えたElementContainerMatrix。

補正式の書き方

補正式に用いることのできる記号は以下の通り

パラメータ

説明

I

強度

Err

エラー値

hw

エネルギー遷移

Q

与えられたElementContainerMatrixがPowderの時

Qx, Qy, Qz

与えられたElementContainerMatrixが単結晶の時

これらを使って、Pythonで扱うことのできる形で式を記述する。例えば下記のように表現する。

I/hw*Q*Q

GetEi

与えたElementContainerMatrixデータの指定したPixelをビームモニターと見なし入射エネルギーを計算する。

GetEi(dat, expEi=50.0, MonPsd=0,MonPixel=0, L1=Def_L1, T0shift=0.0, FittingType=0, Debug=0)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

expEi

実数

予期する入射エネルギー[meV]。

MonPsd

整数

ビームモニターとみなす検出器Id。

MonPixel

整数

ビームモニターとみなす検出器部位の番号。

L1

実数

L1 [m] :線源と試料との間の距離.

T0Shift

実数

TOFの原点のオフセット値 [micro-sec]。

FittingType

整数

フィッティング関数の種類。0:Gaussian (今はこれだけ)

Debug

整数

デバッグモードオフ:0、オン:1。

戻り値

無し

GetEiFromEvent

指定したPixelをビームモニターと見なしイベントデータから最小限のヒストグラム化を行い、入射エネルギーを計算する。

GetEiFromEvent(runNo=0, expEi="0.0", PSD="-1", PIXEL="-1",NumOfPixel=100, Resolution=0.5,PlotFlag=0)

パラメータ

フォーマット

説明

runNo

整数

ヒストグラム化するRunNo。

expEi

文字列

予期する入射エネルギー[meV]。複数同時指定可能(カンマ区切り)。

MonPsd

文字列

ビームモニターとみなす検出器Id。

MonPixel

文字列

ビームモニターとみなす検出器部位の番号。

NumOfPixel

整数

1検出器あたりのPixel数。

Resolution

実数

横軸のBinningの幅の割合 [%]。Resulusion*Ei/100.0 = binning of TOF

PlotFlag

整数

フィッティング結果をMPlotに出すかどうか:しない(0)、する(1)

戻り値

無し

KiKfCorrection

ki/kf補正を行う。

KiKfCorrection(dat)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

戻り値

無し

(与えられたElementContainerの中身が置きかわる)

MakeWhiteVanCorr

(未実装)White Vanadiumの測定データから補正用データを作成する。

SavePowderDataToText

与えたElementContainerMatrixデータをテキストファイルに書き出す。

SavePowderDataToText(dat,deltaQ=0.0, path="./",filename="Sample.txt")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

deltaQ

実数

Q軸のbin幅。

path

文字列

データファイルを入れるフォルダ名(デフォルトの ./ はカレントディレクトリ)

filename

文字列

データファイル名。

戻り値

無し

ToPowder

非弾性散乱ElementContainerMatrixデータのPowder平均をとる。Qの範囲とbin幅はElastic軸(Energy Transfer = 0.0)上のものを指定する。戻り値のデータは、QのbinごとにElementContainerに保存され、それらを一つのElementContainerArrayに入れ、ElementContainerMatrixに入れている。

ToPowder(dat,startQ=-1.0,endQ=-1.0,deltaQ=0.0)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

startQ

実数

Q軸の範囲の最小値。 -1.0 はデータにおける最小値を利用。

endQ

実数

Q軸の範囲の最大値。 -1.0 はデータにおける最大値を利用。

deltaQ

実数

Q軸のbin幅。

戻り値

ElementContainerMatrix

ElementContainerArrayが一つ入っている。

TofToEnergyTransfer

TOFのヒストグラムをエネルギー遷移のデータへ変換する。

TofToEnergyTransfer(dat,Ei=-1.0,L1=Def_L1,t0shift=0.0,deltaE=0.0,EminRate=0.9,EmaxRate=0.9)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

Ei

実数

入射エネルギー [meV]

L1

実数

L1 [m] :線源と試料との間の距離.。

t0shift

実数

TOFの原点のオフセット値 [micro-sec]。

deltaE

実数

Energy Transfer軸のbin幅 [meV]。

EminRate

実数

Energy Transfer軸の最小値をEiの割合(0.0< EminRate <1.0)で示したもの。

EmaxRate

実数

Energy Transfer軸の最大値をEiの割合(0.0< EmaxRate <1.0)で示したもの。

戻り値

無し

TofToEnergyTransferStrict

TOFのヒストグラムをエネルギー遷移のデータへ変換する(明確なエネルギー範囲を指定可)。

TofToEnergyTransferStrict(dat,Ei=-1.0,L1=Def_L1,t0shift=0.0,Emin=-10.0,Emax=10.0,deltaE=0.0)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

Ei

実数

入射エネルギー [meV]

L1

実数

L1 [m] :線源と試料との間の距離.。

t0shift

実数

TOFの原点のオフセット値 [micro-sec]。

deltaE

実数

Energy Transfer軸のbin幅 [meV]。

Emin

実数

Energy Transfer軸の最小値 [meV]。

Emax

実数

Energy Transfer軸の最大値 [meV]。

戻り値

無し

VisContMOutputFigure

VisualContM上でのスライスを行い画像を保存する。

VisContMOutputFigure(dat, param_file="param.xml",output_file="./",zmin=-1.0,zmax=-1.0)

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

param_file

文字列

パラメータファイル(XtalParams.xml)のパス(VisualContMで保存されたファイル)

output_file

文字列

出力画像ファイルのバス。

Zmin

実数

強度(z)軸の最小値。

Zmax

実数

強度(z)軸の最大値。

戻り値

無し

VisContMOutputFileByPhi

VisualContM上でのスライスを行い、D4Matrix用のバイナリファイルを作成する。

VisContMOutputFileByPhi(dat, param_file="param.xml",phi=0.0,output_file="./")

パラメータ

フォーマット

説明

dat

ElementContainerMatrix

与えるElementContainerMatrix

param_file

文字列

パラメータファイル(XtalParams.xml)のパス(VisualContMで保存されたファイル)

phi

実数

UベクトルとVベクトルの平面上での回転 [degree]

output_file

文字列

出力バイナリファイルのバス。

戻り値

無し

WhiteVanCorr

(未実装)White Vanadiumの補正用データでの補正。

装置用処理・その他

AppendRawDataFiles

複数のRaw Data(イベントデータ)を結合し、別データとして保存する。

AppendRawDataFiles(OutRunNo=990000,outDataPath="-",RunNo1=0,RunNo2=0,RunNo3=0,RunNo4=0,RunNo5=0,RunNo6=0)

パラメータ

フォーマット

説明

OutRunNo

整数

保存するデータのRunNo。このRunNoを名前に含んだフォルダを作成する。

outDataPath

文字列

出力先フォルダ。この中にOutRunNoの名前を含んだデータフォルダが保存される。

RunNo1

整数

結合するRunNo #1

RunNo2

整数

結合するRunNo #2

RunNo3

整数

結合するRunNo #3

RunNo4

整数

結合するRunNo #4

RunNo5

整数

結合するRunNo #5

RunNo6

整数

結合するRunNo #6

戻り値

無し

CheckDataProcess

データ処理の履歴管理用関数。

CopyData

装置において、DAQ PC上のRaw Dataを解析PCへ集約・コピーする。各DAQ CPU上にあるデータを/data/XXX以下へ持ってくるための関数を実行する。測定中のデータおよび測定後のデータは、各DAQ CPUに分散して保存されているため、これらを解析するためには1ヶ所に集める必要がある。そのための関数である。(DR.CopyDataと全く同等)

CopyData(first_run=10,last_run=-1,flag=0)

パラメータ

タイプ

説明

runNo

正の整数(UInt4)

コピーしたいRun number

flag

正の整数(UInt4)

通常は省略、コピーではなくシンボリックリンクにするときは1

戻り値

なし

なし

CopyIroha2Params

装置において、IROHA2 PC上のLog, Paramデータを解析PCへ集約・コピーする。

MakeRunList

装置において、Run No, 測定時間、温度、ゴニオ角度などの情報をリスト化する。