Change History 2018

Change History 2018#

Author:

Yasuhiro Inamura

Last Update:

Apr. 1, 2021

4.0.181220 or later#

Dec 20 2018

[update:0.3.7] Measurement period information can be imported from the t0b file of the module used for histogram creation.

UtsusemiEventDataConverterTemplate::SetDataPathにおいて、T0イベントファイル(.t0b)から時刻情報を取り出す際に、実際にヒストグラム化を行うモジュールのt0bファイルを利用するように改変した。

Dec 19 2018

[update:0.3.7] Speed up to a part ot histogram creations by removing several tasks executions to find run folders

ヒストグラム化時にRun Folderを探しにゆく部分において、実行結果をキャッシュすることで高速化を実現した。

UtsusemiHeaderに含まれる FindRunDataFoldersはデータフォルダが多くなると実行時間が長くなる。 environ_ana.xmlやWiringInfoの探査にこれを何度か呼び出す必要があるが、毎回FindRunDataFoldersを実行すると時間のコストが増大するので、シングルトンのキャッシュクラスを作成し使用することでFindRunDataFoldersの2回目以降の実行を高速化した。

キャッシュクラス: UtsusemiRunDataPathDict

これをFindDataRunFoldersの中でキャッシュとして使用している。

Dec 18 2018

[bugfix:0.3.7] the issue that opened directories are not closed.

Dec 17 2018

[update] Install script on python3

Dec 17 2018

[bugfix:4.0] The issue that the foward and back button of VisualContQ plotting history does not work correctly

VisualContQのスライスのヒストリーを移動できるボタン(Forward, Backボタン)が正しく動作しなかったのを修正。

Dec 15 2018

[update:0.3.7] Update Install_0_3_7.py

Install_0_3_7.pyでのインストール時に、全部入りを選んでも装置を選択する(複数同時選択可能)ようにした。

Dec 15 2018

[update:0.3.7] Add Install.py for 0.3.7

Dec 14 2018

[bugfix:4.0] The issue that the install script causes error on python3

Dec 14 2018

[update:4.0] Add Installation Script for Ubuntu

Dec 14 2018

[update:4.0] Add buttons to output vbin file and to save sliced data to a file

  • .vbinファイルを作成するボタンをつけた(To D4Mat)

  • Sliced Data (ElementContainerArray)をManyoDataBinary(.mdb)かDump(.dmp)で保存できるボタンをつけた

Dec 14 2018

[update:0.3.6] Add d-value histogram creation function on GetHistogramBaseSAS

Dec 14 2018

[update:0.3.7] Standardize braket notation for units as ( unit ) etc.

  • 単位の表記で[ unit ]と( unit )が混在していたので、( unit )に統一した

  • ラベルと単位の間にスペースを入れた

  • DR.GetDataOfMonochroEi3のTimeSliceのヘルプの表記がおかしいのを修正した

Dec 13 2018

[update:4.0] Add a title to the main window bar, new menu function to load data from a file

  • メインパネルのバーにタイトルを入れた

  • 起動時に対角線Foldingの各軸のチェックボックスが全てenabledなのをdisableにした

  • FileメニューにLoad ECM File… を加え、ManyoDataBinary (*.mdb), Dump (*.dmp), SerializedBinary (*.srlz)を読めるようにした。

Dec 13 2018

[update:4.0] Add logo of utsusemi on VisualContQ main panel

空蝉のロゴをVisualContQのメインパネルに表示させた。

Dec 13 2018

[bugfix:0.3.7] The issue that some manyo functions can not distinguish string parameters from os.path.join.”

Serializeなどの万葉の関数の一部が、パラメータとして与えた文字列、特にos.path系列の出力をstrとして認識できないので、str(XXX)でキャストした。

Dec 13 2018

[bugfix:0.3.7] the issue that some patterns of beam current and tag shots information cause to error

Dec 13 2018

[update:0.3.7] Add functions to treat ManyoDataBinary format

Manyoライブラリのバイナリフォーマット ManyoDataBinary (mdb)の読み書きを可能とした。

  • BaseCommand::SaveDataToManyoBinary

  • BaseCommand::LoadDataFromManyoBinary

ファサードCmmにも追加した。

Dec 11 2018

[update:0.3.7] Add NormByKickers to BaseCommands.py Cmm.py

Dec 11 2018

[update:0.3.7-devBeamCurrent] Update Extract_runlist.py applied to new format of MakeRunList with flag_proton=4

MakeRunListの新しい出力フォオーマット(全部入り)を読み込めるように変更した。 ヘッダ部分からプロトン数やキッカー数、ゴニオの値の場所を推定して読み込むようになった。 ある程度古いrun listファイルも読み込める。

あと、MakeRunListの引数flag_protonのデフォルト値を4とした。

Dec 11 2018

[bugfix:0.3.7-devBeamCurrent] the issue that the format of header information in run list by MakeRunList is not correct.

Dec 11 2018

[update:0.3.7-devBeamCurrent] add Extract_runlist.py

Dec 11 2018

[update:0.3.7-devBeamCurrent] Add new argument isTagCorrect=True to NormByBeamXXXX series in Cmm facades

プロトン数のサーバーの数え落とし問題に対応。

  1. Cmm.NormByBeamとCmm.NormByBeamCurrentにisTagCorrectを加え、デフォルトをTrueに

  2. isCT8NeutronをisCT8nに統一(AMR)

  3. isCT8nのデフォルト値をTrueに

Dec 11 2018

[update:0.3.7-devBeamCurrent] Change NormByBeamCurrent argument isTagCorrect=True in GetDataOfMonochroEi2 and -Ei3, add new option to MakeRunList (full showing)

プロトン数のサーバーの数え落とし問題に対応。

  1. GetDataOfMonochroEi系列のプロトン数による規格化において、ショットタグ番号を用いた補正値をデフォルトとする。

  2. MakeRunListで、以下の全ての情報を示す新たなオプションflag_proton=4を追加した。 RunNo 開始時刻 終了時刻 キッカー数 修正プロトン数(オリジナル,比率) 温度A 温度B ゴニオ (そのほか試料環境)

Dec 11 2018

[update:0.3.7-devBeamCurrent] Add functions to correct proton current using by shot tags numbers

プロトン数のサーバーの数え落とし問題に対応。

ショットタグ番号を用いて補正を行う。

ショットタグを取り出すAquireNeutronSourceTextInformation::PutShotsCounts()を作成しているが、その値を用いて補正を行うようにした。

getNeutronSourceInfo.pyのgetBeamCurrentの戻り値をこれまで単独のプロトン数だったが、これを

(補正プロトン数, 補正比率, オリジナルプロトン数)

を戻すようにした。

BaseCommands::getBeamCurrent, NormByBeamCurrent, NormByBeam に isTagCorrect(bool)引数を追加し、 補正プロトンを使うか、オリジナルを使うかを選択できるようにした。

Dec 7 2018

[update] Add new WiringInfo_181207.xml and update environ_ana.xml

Dec 7 2018

[bugfix] No error when program fails to get proton current on treating several run numbers

Nov 28 2018

[bugfix] the issue that the virtual D4Matrix creation fails on D4MatSlicer.

Nov 26 2018

[bugfix:0.3.7] the issue that free slice on M2Plot(D2Vis.py) called from D4Mat does not work correctly

M2PlotのFreeSlice機能において、正しくスライスできない(領域が正しく指定されない)問題と、MASKVALUEが入っている値が正しく処理されない問題を修正した。

Nov 26 2018

[bugfix:0.3.7] the issue that the intensity values of vbin output for D4Matrix are wrong ( double 1/dHW corrections )

dHW補正を行なったヒストグラムをD4Matrix用にvbinファイルで出力した際に、二重にdHW補正を行なってしまう問題に対処した。

Nov 22 2018

[bugfix:0.3.7] the issue that the behaviors of some functions tool-tips are different with the others on Sequencer

SequenceEditor上のいくつかの関数のツールチップの挙動がおかしい。

Cmm.SumOfPixel() をシーケンス欄に入れて、選択状態で、かつマウスをシーケンス欄に置いた時に表示されるツールチップの挙動において、マウスを動かしてもツールチップ表示が移動しないという問題。

SumOfPixel のdef 直下に置いているドキュメンテーション文字列の書き方で

@retval EC

と書かれているが、これを正しく動く関数にあるように

@retval EC (ElementContainer)

と追記したところ、動作するようになった。

このバグの意味はわからないが、修正しておく。

Nov 16 2018

[bugfix:0.3.7] the issue that some functions of WiringInfoEditor does not work correctly

WiringInfoEditorを用いてWiringInfoを作成する際に、いくつか正しく設定できない、もしくは利用されない情報があったので修正した。

  • 検出器のtypeが正しく反映されない問題

  • 検出器情報のaxisが正しく反映されない問題

  • WiringInfoEditor::SetInstInfo の追加(InstCode, Version, Updateを更新)

Nov 16 2018

[bugfix:0.3.7] the issue that core dump occurs on creating histograms for two or upper run numbers with the single time slicing

複数のRunNumberを与え、かつSingleTimeSlice(単純な時間スライス)の設定を行ったヒストグラム化を行うと、コアダンプする場合がある問題を修正した。

TimeSliceの最初の時刻のイベントが最初のRunNumberのデータ内にない場合に落ちるので、落ちないようにした。

またBaseCommands::NormByBeamCurrentのraiseを分類して、どのエラーなのかの表示(主にSequencer上のエラーダイアログ)をするようにした。それには不要なtry - exceptを省く必要があった。

  1. プロトンカレントが-1の時、サーバーにアクセスできない

  2. プロトンカレントが0の時、データ自体か、Time Slice領域の指定がおかしい

Nov 13 2018

[update:4.0] Add a function to resize the retio of the plot window width and height on Sequencer.DetectMap according to the number of data points

SequencerのDetectMap(M2PlotPlus)表示時に、データのサイズ(PSD数とPixel数)に応じて、プロットウィンドウのサイズの縦横比を変更するようにした。

デフォルトは、横サイズが1000、縦サイズは 1000/(num_of_PSD)*(num_of_pixels) で算出。

Nov 12 2018

[update:4.0] Enable to do Ana with script file path as argument

Ana (SequencerQ.py) にスクリプトファイルを引数として与えて、起動時にスクリプトを読み込み済みにすることが可能とした。 またスクリプトファイルのあるディレクトリをカレントディレクトリとするようにした。

主な仕様

  1. スクリプトへのパスを指定し、起動時にスクリプトを読み込ませる

  2. スクリプトのあるフォルダをカレントディレクトリに指定する

Usage

example

Current Dir

script

Ana <script file path>

Ana ~/hogehoge/test.pmt

~/hogehoge

test.pmt

直接Sequencerを起動する場合は、以下のように指定する。

python /path/to/SequencerQ.py -file=~/hogehoge/test.pmt
Nov 12 2018

[update:4.0-devPythonPath] add __version__ info to utsusemi module.

Nov 12 2018

[bugfix:0.4.0-devPythonPath] the issue that D4Mat2 causes the error on python3

D4Mat2SlicerQをpython3では知らせると、一部エラーが出たので修正。 またPython2かPython3かを見分けるのにsixモジュールを利用していたが、シンプルなplatform.python_version_tuple()に変更。

Nov 12 2018

[update:0.4.0-devPythonPath] update bashrc.XXX and bashrc.py3.XXX of each BL for ‘import utsusemi’

import utsusemi を実現する2

環境変数設定のbashrc.XXXとbashrc.py3.XXXを再設定した。

環境変数の設定は以下のようになる。

環境変数

PYTHONPATH

python-utsusemi

UTSUSEMI_BASE_DIR

python-utsusemi/utsusemi

Nov 12 2018

[update:0.4.0-devPythonPath] Change import paths for utsusemi modules.

import utsusemi を実現する

この場合、これまでのpython-utsusemiにutusemi/フォルダを作成し、ana/, facade/, vis/, XXX/をutsusemiフォルダに入れる。

  • python-utsusemi/utsusemi/ana

  • python-utsusemi/utsusemi/facade

  • python-utsusemi/utsusemi/vis

  • python-utsusemi/utsusemi/XXX

環境変数の設定は以下のようになる。

環境変数

PYTHONPATH

python-utsusemi

UTSUSEMI_BASE_DIR

python-utsusemi/utsusemi

空蝉のPython全コード内のimport vis, import ana などを import utsusemi.vis, utsusemi.anaなどにした。

Nov 12 2018

[update:4.0] Enable to do histogram creation without making temporal files.

空蝉のヒストグラム化では、雛形となるWiringInfoとDetectorInfoを読み込んで必要な部位を編集し、それらを一時ファイルとして ~/ana/xmlに保存し、その一時ファイルを再度読み込んでヒストグラム化を行なっていた。

しかし一時ファイルを作成する際に予め~/ana/xmlを必ず作成しておく必要があるのと、気がつかないうちに非常に多くの一時ファイルが作成されれてしまう。

そこで、BoostXmlPerserで作成していたXML文字列を直接入力する、出力するメソッドを活用して、一時ファイルを作成しないでもヒストグラム化ができるようにした。

一方で、デバッグ時には必要になるので、UTSUSEMI_DEBUGMODE=Yの時には出力するようにした。

この仕様に変更するのに必要な作業において、これまでstringのファイル名を渡していた部分をstringのXML情報を渡す形になりメソッド名及び引数の渡す流れに変更はない。よって上位のUtsusemiGetHistogram系の変更はなくてもよくなった。

WiringInfoEditor系、DetectorInfoEditor系に、直接XMLをやり取りさせるために読み込みはLoadで統一、出力はOutXmlを新たに加えた。

  • string WiringInfoEditorBase::OutXml

  • string WiringInfoEditorNeunet::OutXml

  • string WiringInfoEditorReadout::OutXml

  • string DetectorInfoEditorBase::OutXml

  • string DetectorInfoEditorNeunet::OutXml

  • string DetectorInfoEditorReadout2d::OutXml

また、UtsusemiHeaderにデバッグモードを取り出すメソッドの戻り値をstringからboolに修正した。

  • bool UtshsemiHeader::UtsusemiEnvGetDebugMode()

これまで一時ファイルを作成しファイル名を戻していたメソッドに、DebugMode=falseならOutXml()結果を戻すようにした

  • string UtsusemiWiringInfoEditorTemplate::MakeTempWiringInfo

  • string UtsusemiDetectorInfoEditorBase::MakeTempDetectorInfo

Nov 9 2018

[update:4.0] Add new function to get UTSUSEMI_WORK_DIR and UTSUSEMI_DEBUGMODE from environment variables

UtsusemiEnvGetWorkDir() : UTSUSEMI_WORK_DIRがあれば返す、なければ””.

UtsusemiEnvGetDebugMode() : UTSUSEMI_DEBUGMODEがあれば返す、”Y”か”N”。環境変数がなければ”N”.

Nov 9 2018

[update:4.0] Replace environment variable of UTSUSEMI_USR_PRIV_HOME to UTSUSEMI_USR_DIR

環境変数UTSUSEMI_USR_PRIV_HOMEを用いる部分を、全てUTSUSEMI_USR_DIRとなるように変更した。 また、C++コード内ではUtsusemiEnvGetUserDirを利用するようにした。

また、bashrc.XXX 系列も修正した。 - UTSUSEMI_USR_PRIV_HOMEからUTSUSEMI_USR_DIRへの置き換え

Nov 9 2018

[update:4.0] Replace environment variable of UTSUSEMI_USR_DIR to UTSUSEMI_BASE_DIR/UTSUSEMI_INST_CODE

環境変数UTSUSEMI_USR_DIRを用いる部分を、全てUTSUSEMI_BASE_DIR/UTSUSEMI_INST_CODEとなるように変更した。 それに加え、以下の情報を環境変数から取り出せるようにした。

  • UtsusemiEnvGetBaseDir() : <- /opt/mlfsoft/python-utsusemi

  • UtsusemiEnvGetInstDataDir() : <- /data/XXX

  • UtsusemiEnvGetInstDir() : <- /opt/mlfsoft/python-utsusemi/XXX

  • UtsusemiEnvGetUserDir() : <- ${HOME}

また、bashrc.XXX 系列も、Utsusemi4.0に合うように修正した。

  • uGaoへのパスの追加

  • versionの変更

  • UTSUSEMI_USR_DIRの削除

Nov 9 2018

[update:4.0] Rename environment variable of UTSUSEMI_SYS_NAME to UTSUSEMI_INST_CODE

環境変数UTSUSEMI_SYS_NAMEを全てUTSUSEMI_INST_CODEに変更した。 また、UtsusemiEnvGetInstCode()も両方に対応するようにした。

Nov 9 2018

[update:4.0] mv Sequencer.py and Sequencer2.py to obsolete folder

python-utsusemi/ana/Sequencer.py, .xrc, Sequencer2.py, .xrc をobsoleteフォルダに移動させた。

Nov 8 2018

[update:0.3.7] Rewrite the default value of MaskInfo argument on DR.GetDataOfMonochroEi2,~Ei3 and Cmm.GetNeunetHist in SIK to “default”

SIK(BL01)の環境で、DR.GetDataOfMonochroEi2,-Ei3やCmm.GetNeunetHistのMaskInfoのデフォルトを”default”にした。これでenviron_ana.xmlのマスクファイルを利用する。

Nov 7 2018

[update:0.3.7] Add kicker information to MakeRunList

MakeRunListの出力に、Kickerを加えることができるようにした。

flag_proton

意味

0

プロトンカレントなし、キッカーなし

1

プロトンカレントのみ

2

キッカーのみ(プロトンカレントの値と入れ替え)

3

両方(出力される数値が一つ増えるので注意)

Nov 7 2018

[bugfix:0.3.7] The issus that PeakLabel of FastPlotQt does not work with matplotlib 2.1.1 on Ubuntu 18.04

[bugfix:0.3.7] issue that smoothing does not work on Ubuntu 18.04 (Scipy 0.19.1 or later)

vis.MPlot (FastPlotQt)のPeakLabel機能がうまく動作しない問題に対処。

Ubuntu 18.04 (Scipy 0.19.1) でスムージングに問題があったのを修正。 Scipy 0.19.0 より scipy.signal.convolve の仕様が変更になったため。

Nov 5 2018

[update:0.3.7-devFindPath] Add MaskInfo files for SIK

environ_ana.xmlとそれぞれのWiringInfoを元に、MaskInfoを作成した。 検出器の増加、ABCパラメータ調整の有無などで世代を分けて、environ_ana.xmlに反映した。

Nov 5 2018

[update:0.3.7-devFindPath] Add functions to use MaskInfo from param files in environ_ana.xml

今回の仕様:

  • マスクファイルがRunNoデータフォルダ内にある場合でも読みに行けるようにした(サーチパスにRunNoデータフォルダも追加した)

  • 複数の同じRunNoのフォルダがあった場合、日付が一番新しいものを選択する(MaskInfoだけでなく、イベントデータサーチにも適応)

現状サーチの順番は

  1. RunNoデータフォルダ内 params/Utsusemi <- NEW (FindEnvironFolderInRunData)

  2. python-utsusemi/XXX/ana/xml <- (FindParamFilesFolders)

  3. ~/ana/xml <- (FindParamFilesFolders)

  4. [Current Folder] <- (FindParamFilesFolders)

である。

Nov 5 2018

[update:0.3.7-devFindPath] Add functions to use MaskInfo from param files in environ_ana.xml

現状、マスクファイルは、BL01だと、”mask.txt”を利用しているが、本来は、検出器の配置ごとに修正が行われるべきものである。よって、environ_ana.xmlに当初から搭載されている<maskinfo>タグをきちんと利用できるようにする。

今回の仕様:

  1. RunNoを与えられるとenviron_ana.xmlに書かれている<maskinfo>を利用する(既存のUtsusemiAnaEnvironに搭載)

  2. SetMaskInfoで”Default”が与えられると、environ_ana.xmlの<maskinfo>を利用する(新規)

  3. SetMaskInfoでファイル名が与えられると、FindParamFilePathで探す

GetNeunetHistのMaskInfoと、DoMaskのMaskInfoの違い:

  • GetNeunetHistのMaskInfoは、Pixelのマスク化と、TOF方向のマスクの両方に作用する

  • DoMaskでのMaskInfoは、Pixelのマスク化のみ行う(GetNeunetHistのPixelマスクに加える形

Nov 2 2018

[update:0.3.7-devFindPath] Add functions to search param files for histogram creation in run data folder to UtsusemiAnaEnvironReader

ヒストグラム化に使用するパラメータファイルが、RunNoのデータフォルダ内にある params/Utsusemi にあれば優先的に使うようにする。 今後は、例えばSIK012345_20181102/paramsの中に、そのデータに対して有効なヒストグラム化パラメータファイルも収めることで、データフォルダさえあればデータ処理ができるようにする。

具体例としては、 /data/SIK012345_20181102/params/ の中にUtsusemiフォルダを作成し、そこへ最新のenviron_ana.xml、最新のWiringInfo、DetectorInfo, MaskInfoを配置する。

  • environ_ana.xmlはこれまでと同様のもの(modeも使用可能)

  • WiringInfo, DetectorInfo, MaskInfoは そのデータを処理するのに必要となる最小限のファイル

今回の仕様:

  1. 自動的に空蟬の環境変数を用いて上のUtsusemiパラメータフォルダを探し、見つかればそれを利用

  2. 見つからなければこれまで通り、python-utsusemi/SIK/ana/xmlを探す

Nov 2 2018

[update:0.3.7-devFindPath] move some functions from UtsusemiEventDataCoverterTemplate to UtsusemiHeader about search path for a folder

UtsusemiEventDataConverterTemplate::SetDataPath 内で使用されていたフォルダを探すルーチンをHeaderBaseに移した。

  • UtsusemiEventDataConverterTemplate::SetDataPathがちょっとだけすっきり

  • UtsusemiHeaderに以下のメソッドを追加

    • string UtsusemiHeader::FindRootDataFolder( string _dataDir=”” )

    • vector<string> UtsusemiHeader::FindInstDataFolders( string _instCode, string _rootDir=”” )

    • vector<string> UtsusemiHeader::FindRunDataFolders( string _runNo )

    • vector<string> UtsusemiHeader::FindRunDataFolders( string _instCode, string _runNo )

    • vector<string> UtsusemiHeader::FindRunDataFolders( string _instCode, string _runNo, vector<string> _instDataFolders )

  • これらの変更に伴い、いくつかのコードを変更

Nov 1 2018

[update:0.3.7] Add descriptions about executing dHWCorrection to DR facade functions

DR系ファサード関数のヘルプに(1/dhw)補正の関数を実行していることを示す文言を追加した。

Nov 1 2018

[bugifx] compile error in UtsusemiD4Matrix2 on MacOS

Nov 1 2018

[update:0.3.7] Add dHWCorrection function to facade/Cmm.py

(1/dhw)補正の関数をCmm系ファサード関数に追加した(AMR,SIK)。

Oct 30 2018

[bugfix:0.3.7] Failure to compile in Windows

Oct 30 2018

[update:0.3.7] update mask file by R.Kajimoto

Oct 26 2018

[update:0.3.7-devNoPixelHed] The 2nd attempt to change the role of headPixelId attribute

仕様の変更を行った。

  1. WiringInfoで、headPixelIdの属性値が正確に書かれていなくても動作するようにした。

上を廃止、以下のようにした。

  1. headPixelIdがない、もしくは負の値の時はdetIdの増加に伴い、numPixelの値でPixelIdも増加

  2. headPixelIdが0以上の整数の場合は、そこで一旦PixelIdがheadPixelIdにセットされて以降は1.で増加

よって基本は headPixelIdはなくすか”-1”をセットする。 どうしてもPixelIdを固定させたいDetectorに対して、headPixelIdを加える。

ただし、2.の場合、同じPixelIdがセットされてしまう可能性もある。その場合ヒストグラム化の時に同じPixelIdのどちらかにヒストグラムが貯まることになるので注意。

Oct 26 2018

[update:0.3.7-devNoPixelHed] The first attempt to change the role of headPixelId attribute

WiringInfoで、headPixelIdの属性値が正確に書かれていなくても動作するようにした。 ただ、現時点での仕様は

headPixelIdに何が書かれていても以下の動作となる。

  • WiringInfoの最初のdetIdの最初のpixelをPixelId=0とする。

  • それ以降は、detIdに抜け、マスクがかかっていても連番となる。

という仕様である。

ResetHeadPixelId(0,-1,0);
SetInfoAsReader();

次は、

  • headPixelId属性がなくても動作するように

  • headPixelIdに値が設定されていれば、それを利用するように

  • headPixelIdあり・なしが同一ファイルの中に混在する場合の処理はどうするのか

などを検討する。

Oct 24 2018

[bugfix:0.3.7] The issue that the core dump occures when UtsusemiD4Matrix reads small-size vbin file.

UtsusemiD4Matrixで非常に小さなvbinファイルを読み込むとき、コアダンプする問題を修正。

Oct 24 2018

[bugfix] the issue that GetMultiEi does not work correctly.

Oct 23 2018

[bugfix] Wrong NumOfPixel parameters of the added WiringInfo.

Oct 23 2018

[update] Correct A-B-C parameters for PSDs around the beam catcher

Oct 23 2018

[update] Correct A-B-C parameters for new installed PSD

Oct 23 2018

[bugfix] fixed wrong index in WiringInfo

Oct 23 2018

[update] Add the information parameters for New installed PSD

Oct 11 2018

[bugfix:0.3.7] The issue of the failure to compile UtsusemiEventConv2Q codes

UtsusemiEventConv2Qのコンパイルに失敗するのを修正。VisualCalcSqeをUtsusemiSqeCalc, UtusemiSqeCalcXtalParamsで置き換えた。

Oct 9 2018

[update:0.3.7] add a new arguments values pattern of UtsusemiReductionCommon::CalcPhi

UtsusemiReductionCommon::CalcPhiにおいて、d_px, d_py, d_pzの値はPolar Angle及びAzim Angleの尤度の計算に使用される。

与えられる値による尤度計算の挙動を変更した。

  • d_px,d_py,d_pzが全て0の時(デフォルト): UTSUSEMI_KEY_HEAD_TYPICALPIXELSIZEを利用する

  • d_px,d_py,d_pzが全て負の時(SAS環境で使用): 尤度を0

  • d_px,d_py,d_pzが正の値の時: 通常の計算

Oct 3 2018

[bugfix] The issue that CuiCtrlVisContM does not work correctly

CuiCtrlVisContMで

  • DoSliceでエラーが発生する問題(UtsusemiSqeCalc::Sliceの引数の仕様が変わったため)

  • SaveFigureOfM2Plotでプロット図上のタイトルが正しく表示されない問題

に対応した。

Oct 2 2018

[bugfix:4.0] The issue that M2PlotPlus does not open plotter (u2dplot) from D4MatSlicerQ

Oct 1 2018

[update:4.0] refactoring codes to move VisContQParams.py to obsolete (step 2,3,4)

VisContQParams.py を使用しないようにするステップ。

  1. VisualContQ

  2. D4MatSlicerQ

  3. D4Mat2SlicerQ

  4. D4MatQ_Manyo

ステップ2

D4MatSlicerQでは、VisContQParamsは

D4MatSlicerQ::MakeVirtualD4MatrixFrame::OnLoadParams
D4MatSlicerQ::MakeVirtualD4MatrixFrame::OnSaveParams

において、XtalParam.xmlの情報を扱うのに使用されている。 この部分を全て、UtsusemiSqeCalcXtalParamsのメソッドで置き換えた。 ほぼ、VisualContQと同じ置き換えで終了。

またその動作確認作業中に判明した以下の問題点を修正した

  • D4MatSlicerQ::MakeNewMatrixFrameでのGUI(Qt.LineEditor)との連結に問題があったので修正した

  • D4MatSlicerQ::MakeVirtualD4MatrixFrame::OnLoadParamsで、D4MatQ_Manyo::loadVisContParamsへの引数をstr指定した(UtsusemiSqeCalcXtalParamsの仕様)

ステップ3

D4Mat2SlicerQでは、VisContQParamsは

D4Mat2SlicerQ::D4MatRSlicer::OnLoadXtalParam
D4Mat2SlicerQ::D4MatRSlicer::OnSaveXtalParam

にてXtalParam.xmlの情報を扱うのに使用されている。 この部分を全て、UtsusemiSqeCalcXtalParamsのメソッドで置き換えた。

またその動作時に、UtsusemiSqeCalcXtalParams::SetSliceAxesを使用する。その引数は [ “Type”, min, max, width, folding ] で与えられるが、”Type” (”x”,”y”,”z”,”t”)が大文字でも小文字でも受け付けるように変更した。

ついでにUtsusemiSqeCalcXtalParams::AddRotationStepも同様に変更した。 あと、エラー時のコメントを詳細にした。

ステップ4

D4MatQ_Manyoでは、VisContQParamsは

D4MatQ_Manyo::loadVisContParams

においてXtalParam.xmlからスライス情報を引き出すのに使用されている。 この部分を全て、UtsusemiSqeCalcXtalParamsのメソッドで置き換えた。

その他

VisualContQ.pyで不要なコメント文を削除した。

結果

VisContQParams.py をobsolete化した。

Oct 1 2018

[update:4.0] update codes to move VisContQParams.py to obsolete (step 1)

VisContQParams.py を使用しないようにするステップ。

  1. VisualContQ

  2. D4MatSlicerQ

  3. D4Mat2SlicerQ

  4. D4MatQ_Manyo

ステップ1. VisualContQ

VisContQParamsは

  • VisualContQ::OperationTab::OnLoad

  • VisualContQ::OperationTab::OnSave

において、XtalParam.xmlの情報を扱うのに使用されている。 この部分を全て、UtsusemiSqeCalcXtalParamsのメソッドで置き換えた。 またその動作確認作業中に判明した以下の点を修正した。

  • ViewAxesのラベルを取り出す関数の整備

    • UtsusemiSqeCalcXtalParams::PutViewAxesLaels()の追加

  • UtsusemiSqeCalcXtalParams::SetProjectionAxesのPyオブジェクトの扱いに問題

  • Diag Foldingのパラメータを正しく扱えない問題

    • UtsusemiSqeCalcXtalParams内部でDiag FoldingsのパラメータがDoubleで扱われていたのをUInt4に

    • UtsusemiSqeCalcXtalParams::PutDiagFoldingの戻り値をvector<UInt4>にし、戻り値のバグを修正

    • VisualContQで、Diag Folding関連の情報をGUIから正しく読み込んだり、設定したりできない問題を修正

  • UtsusemiSqeCalcXtalParams::PutDiagFoldingの戻り値変更に伴うコード変更

    • UtsusemiSqeCalc

    • UtsusemiD4Matrix2

Oct 3 2018

[bugfix] The issue that CuiCtrlVisContM does not work correctly

CuiCtrlVisContMでいかに対応。

  • DoSliceでエラーが発生する問題(UtsusemiSqeCalc::Sliceの引数の仕様が変わったため)

  • SaveFigureOfM2Plotでプロット図上のタイトルが正しく表示されない問題

Sep 29 2018

[update:4.0] mv CuiCtrlVisContQ.py to obsolete and change some codes around it

CuiCtrlVisContQ.py を使用しないようにした。

CuiCtrlVisContQは、VisualCont系をCUIから用いるものであるが、すでにManyo.Utsusemi.UtsusemiSqeCalcクラスで、大抵は実装済であるので、それでの置き換えとする。

主にBaseCommandsInEla.pyにて以下の関数で使用。

  • def VisContMOutputFileByPhi(dat, param_file=”param.xml”,phi=0.0,output_file=”./”):

  • def VisContMSliceToECA(dat, param_file=”param.xml”,phi=0.0):

  • def VisContQOutputFileByPhi(dat, param_file=”param.xml”,phi=0.0,output_file=”./”):

  • def VisContQSliceToECA(dat, param_file=”param.xml”,phi=0.0):

  • def VisContMOutputFigure(dat, param_file=”param.xml”,output_file=”./”,zmin=-1.0,zmax=-1.0):

いずれもparam.xmlに書かれている情報を利用して射影、スライス、出力を行なっている。 これらをUtsusemiSqeCalcやuGao::U2IFInDarkを用いて書き直した。

また、それに伴い

  • UtsusemiSqeCalc::ConvertToD4Mat の変更

  • UtsusemiSqeCalcXtalParams::PutAxRange の変更

  • UtsusemiSqeCalcXtalParams::PutAxLabels の追加

を行なっている。

Sep 25 2018

[update:0.3.7] Change the treatment of functions on BaseCommands group

BaseCommandsElaとBaseCommandsInElaの先頭に from ana.Reduction.BaseCommands import * を加えることで、BaseCommandsグループの関数を使用する時には BaseCommandsEla か BaseCommandsInEla をimportするだけで良いようにした。 すなわち、これまで import ana.Reduction.BaseCommands as BaseCom import ana.Reduction.BaseCommandsInEla as BCI などとしていたが、 import ana.Reduction.BaseCommandsInEla as BaseCom とするだけで、BaseCommandsの関数も BaseCommandsInElaの関数も呼び出せるようになった。

これに伴い、facade/Cmm.py, facade/DR.py なども変更を加えた。

Sep 25 2018

[update:0.3.7] Fix the issue of the possibility that WiringInfoEditorBase::PutNumOfPixelForDet returns wrong value

Sep 25 2020

[update:Utsusemi-SAS:0.3.7] Remove FtlCalcDetectorEffi class

Sep 21 2018

[update:4.0] change UTSUSEMIMANYOVERSION from 0.3.7 to 4.0.0

Sep 21 2018

[update:4.0] mv codes around MPlot class to obsolete

MPlotに関連する以下のコードをobsoleteに移動した。

  • vis.M2Clip.py

  • vis/MPlot.py

  • vis/FastPlot.py

  • vis/FastVisualize.xrc

  • vis/UtilPlot.py

  • nvis/WxCom.py

  • vis/FittingFunc*.png

  • vis/MPlotBaseFittingFuncs.py

これらに伴う, vis.MPlot -> uGao.MPlotへの変更。

  • ana/Reduction/BaseCommandsInEla.py

  • ana/Reduction/PutSum.py

  • facade/D1Plotter.py

Sep 21 2018

[update:4.0] mv codes around M2Plot class to obsolete

M2Plotに関連する以下のコードをobsoleteに移動した。

  • vis/M2Plot.py

  • vis/D2Vis.py

  • vis/D2Vis.xrc

  • vis/D2Vis_macos.xrc

  • vis/CuiD2Chart.py

これらに伴い、BaseCommandsInEla::SavePowderDataToText内のCuiD2Chart, D2Visの部分をManyo.MLF.MlfArraySlicerで書き直した。

ただし未対処のものがいくつかある

  • ana/Reduction/CuiCtrlVisContQ.py : CuiD2Chart, M2Plot

  • VNR/facade/GetHist.py : M2Plot

  • VNR/facade/Hist2d.py : M2Plot

Sep 11 2018

[update:4.0] mv VisContParams.py DetectMap.py MethodAssistant2 to obsolete

VisualContParams.py を obsoleteに移動した。 DetectMap.py を obsoleteに移動した。 MethodAssistant2 を obsoleteに移動した。

Sep 11 2018

[update:4.0] mv VisContMParams.py CuiCtrlVisContM.py D4Mat_Manyo.py to obsolete

VisualContMParams.py を obsoleteに移動した。(基本的にVisualContQParams.pyで置き換え済み) 続けて、

  • ana/Reduction/CuiCtrlVisContM.py

  • ana/Reduction/D4Mat_Manyo.py

もobsoleteに。それに関連していくつかコードを書き換えた。

vis/VisContMParams

  • imported from

    • vis/D4Mat2SlicerQ.py

    • ana/Reduction/CuiCtrlVisContM.py -> ana/Reduction/obsolete

    • ana/Reduction/D4Mat_Manyo.py -> ana/Reduction/obsolete

ana/Reduction/CuiCtrlVisContM

  • imported from

    • vis/CuiD2Chart.py -> rewrite to CuiCtrlVisContQ

    • ana/Reduction/BaseCommandsInEla.py <- rewrite to CuiCtrlVisContQ

ana/Reduction/D4Mat_Manyo.py

  • imported from only obsolete .py

Sep 11 2018

[update:4.0] mv VisualContM.py to obsolete

VisualContM.py を obsoleteに移動した。 それに関わる.xrcファイル、VisualContMをimportしていた。 python-utsusemi-XXX/facade/VisualModule.py も移動した。

Sep 11 2018

[update:4.0] mv D4MatSlicer.py, D4Mat2Slicer.py and SliceViewer3D to obsolete

python-utsusemi/visの以下を不要として、vis/obsoleteに移動した

D4MatSlicer.py, D4MatSlicer.xrc, D4Mat2Slicer.py, D4Mat2Slicer.xrc, SliceViewer3D/ SliceViewer3D.py

それに伴い、D4Mat2SlicerQ.pyを変更した

Aug 24 2018

[update] update Makefile.obj

Aug 24 2018

[update] Remove BoseFactorChoppers class

BoseFactorChoppers classのコードをobsoleteフォルダに移動し、関連するコードを修正した。

Aug 24 2018

[update] Replace some double literals in C++ code

MlfHeader.hhにて定義された定数を利用し、いくつかの数値のリテラルを置き換えた。 あと、WiringInfoEdotr系で使用される単位変換用キーコードの大文字・小文字に揺らぎがある可能性があるので、修正した。

Aug 24 2018

[update] Add string constants in UtsusemiHeader to replace string literals in C++ code about detType

UtsusemiHeader.hhにて以下を定義し、 C++コード内で使用されている文字列のリテラルを置き換えた。

UTSUSEMI_KEYHEAD_DETTYPE_UPSD = "UPSD"
UTSUSEMI_KEYHEAD_DETTYPE_MON = "MON"
UTSUSEMI_KEYHEAD_DETTYPE_TRIGNET = "TRIGNET"
Aug 23 2018

[update] Replace string literals in C++ code with string constants in UtsusemiHeader.hh

UtsusemiHeader.hhにて定義された文字定数を利用して、 C++コード内で使用されている文字列のリテラルを置き換えた。

Aug 23 2018

[update] Define string constants in UtsusemiHeader.hh as a replacement for string literal in C++ codes.

UtsusemiHeader.hhに, C++コード内で使用されている文字列のリテラルを置き換える文字定数を定義した。

Aug 21 2018

[update:devCorrectFuncs] update files for C++ compile.

Aug 21 2018

[update:devCorrectFuncs] Remove ConvertToSPEChoppers class and UtsusemiHistogramBinToPoint class

  • ConvertToSPEChoppers は他で使用されていない、かつ中身がおかしいので削除した

  • UtsusemiHistogramBinToPoint は他で使用されておらず、かつ同様の関数をUtsusemiReductionCommon::NormByBinWidthで使用できるので削除した

Aug 21 2018

[update:devCorrectFuncs] Apply UtsusemiReductionInEla funcs to data reduction part in UtsusemiD4Matrix2

  • UtsusemiD4Matrix2のデータリダクション部分をUtsusemiReductionInEla クラスで置き換えた。

  • UtsusemiD4Matrix2でUtsusemiEventDataConverterNeunetのインスタンスをUtsusemiGetNeunetHistogramから取り出すメソッドを追加。

  • UtsusemiReductionCommon::CalcPhiのプロセスキーを変更。

Aug 20 2018

[update:devCorrectFuncs] Remove ToPowderChoppers class

ToPowderChoppers classのコードをobsoleteフォルダに移動し、関連するコードを修正した。 また、UtsusemiHeader::UTSUSEMIMANYOVERSIONを’0.3.7’にあげた。

Aug 19 2018

[update:devCorrectFuncs] Remove KiKfCorrection class

KiKfCorrection classのコードをobsoleteフォルダに移動し、関連するコードを修正した。

Aug 19 2018

[update:devCorrectFuncs] Remove D4Matrix class

D4Matrix classのコードをobsoleteフォルダに移動し、関連するコードを修正した。

Aug 19 2018

[update:devCorrectFuncs] Remove PhiCalculation class

PhiCalculation classのコードをobsoleteフォルダに移動し、関連するコードを修正した。

Aug 19 2018

[update:devCorrectFuncs] Remove UtsusemiD4MatOnMem from manyo code

UtsusemiD4MatOnMemのコードをobsoleteフォルダに移動し、関連するコードを修正した。

Aug 19 2018

[update:devCorrectFuncs] Add NormByKickers func in UtsusemiReductionCommon

Kickerカウントでノーマライズする機能を追加した。 あと、いくつかのエラーメッセージで_MessageTag文字列が2回続くことがあるのを修正した。

Aug 17 2018

[update:devCorrectFuncs] Add dHWCorrect func in UtsusemiGetNeunetHistogram::SetElementContainerMatrix

1.0/Δhw 補正を行う関数UtuseumiReductionCommon::dHWCorrectを

  • UtsusemiGetNeunetHistogram::SetElementContainerMatrix

内に追加した

その結果、

  • python-utsusemi/ana/Reduction/BaseCommands::GetNeunetHist

から、不要となったPhiCalclationを削除した

また、いくつか誤っていたコメント文を修正し、UtsusemiGetNeunetHistogram::SetElementContainerMatrix でSetMaskに失敗した時の戻り値をFalseに確定した。

Aug 17 2018

[update:devCorrectFuncs] Add dHWCorrection func in BaseCommandsInEla.py

1.0/Δhw 補正を行う関数dHWCorrectionをBaseCommandsInElaに追加した。中身はUtsusemiReductionInEla::dHWCorrectの実行。 また、dHWCorrectionを

  • GetDataOfMonochroEi2

  • GetDataOfMonochroEi3

の中に追加し、この関数で取り出したデータはbin幅補正されているものとなる。 あと不要なDoMaskなどを消した。

Aug 17 2018

[bugfix] Compile error about Python API on Python 3

Python2で使用できるPython API のいくつかが、Python3では変更になったり、なくなったものがあるので、それらを修正した。

Aug 8 2018

[update] refined and unified data reduction codes

補正系のC++コードを統合する最初の一手。

  • UtsusemiReductionCommon

  • UtsusemiReductionInEla

を準備する。

クラス名

メソッド

説明

UtsusemiReductionCommon

CalcPhi

Polar angleとAzimuth angleを計算しヘッダへ入れる(PhiCalcurationと同等)

NormByBinWidth

SetKeysで指定されたX軸のbin幅で強度をわる。 ヘッダに”isHistogram=0”を追記。将来的には ec->HistToScat() を利用。

NormBySolidAngle

立体角補正関数を行う

SolidAngleCorrect

NormBySolidAngleを呼び出す

UtsusemiReductionInEla

上記のメソッド

ReductionCommonを継承しているので、CalcPhiなども使用できる

KiKfCorrect

KiKfCorrectionと同じ

dHWCorrect

横軸”Energy”(hw)のbin幅で割る、つまり1/dhw補正を行う

Aug 8 2018

[bugfix] small bugfix about error to add L2 information to Header and import module

Jul 18 2018

[update] divide functions in BaseCommands.py into ones for elastic and inelastic, unify functions in DR.py into BaseCommandsIne.py.

BaseCommands.pyのうち、Elasticで使用する関数とInelasticで使用する関数に分けた。 それに関わる関数の呼び出し側を修正した。

SIKとAMRのDR.pyの関数をBaseCommandsIne.pyに移動した。

Jun 18 2018

[update] working for issue no. 46 to remove literal from codes 4

コードに含まれるリテラルをなくす。

WiringInfoで使用されていたいくつかのリテラルを置き換えた。 特にUtsusemiFrameBoundaryInfoに関して、BoundaryTypeを定義し、それを利用するように変えた。 その際に、WiringInfoEditorBaseにFrameBoundaryInfoがあると、WiringInfoConversionDictionaryからincludeの関係性からか、FrameBoundaryInfoが呼び出せないことがわかったので、新たにWiringInfoDataBaseクラスを作成し、WiringInfoEditorBaseにあったいくつかのクラス(WiringInfo.xmlのTAGの情報やそれぞれのタグの情報を蓄えるクラス)をまとめて移動させた。

Jun 18 2018

[update] working for issue no. 46 to remove literal from codes 3

コードに含まれるリテラルをなくす。 今回は、ElementContainerのベクトルやヘッダ情報のキーとして使用していた文字列のリテラルを撤廃する試み。 検出器の種類(“TYPE”)とその値(“PSD”,”uPSD”,…)を文字型定数に置き直した。

Jun 18 2018

[update] working for issue no. 46 to remove literal from codes 2

コードに含まれるリテラルをなくす。 今回は、ElementContainerのベクトルやヘッダ情報のキーとして使用していた文字列のリテラルを撤廃する試み。 いくつか紛らわしいキーがあったので修正。

Jun 18 2018

[update] working for issue no. 46 to remove literal from codes

コードに含まれるリテラルをなくす。 今回は、ElementContainerのベクトルやヘッダ情報のキーとして使用していた文字列のリテラルを撤廃する試み。

Jun 15 2018

[update] continuous works for issueNo40 on Python facade codes

ana.Reduction.DefaultInstParams.pyを極力使用しないようにするために, Pythonのfacadeコードで使用されている関数や機能の置き換えを行なった。

  • 他の装置でも使用しているため、確認が重要。

  • DetectorInfoにいくつか情報を追記する必要もある。

Jun 15 2018

[update] merge branch issueNo40

ana.Reduction.DefaultInstParams.pyを極力使用しないようにする開発のブランチをマージした。 気をつけないといけないのは、他の装置でも使用しているため、確認が重要。 また、DetectorInfoにいくつか情報を追記する必要もある。 ただし、まだDefが使用されているのでfacade関連で修正が必要

Jun 15 2018

[update] update do_make_Utsusemi.py

Aug 7 2018

[bugfix:0.3.6-devD4mat2] change the method to store data of StepByStep method in D4Mat2SlicerQ and small bugfix.

D4Mat2SlicerQのStepByStep法での処理で、これまでデータの保存をRun Number毎に保存していたが、同じ角度を複数のRunで測定することもあるので、角度毎にデータを保存するようにした。 またスライスのところで軸を与えるコンボボックスのアクションが正しく反映されていなかったので、修正した。ただ、なぜ以前の方法が有効ではないのかが不明。

Aug 7 2018

[bugfix:0.3.6-devD4mat2] change the method to store data of StepByStep method in D4Mat2Slicer.

D4Mat2SlicerのStepByStep法での処理で、これまでデータの保存をRun Number毎に保存していたが、同じ角度を複数のRunで測定することもあるので、角度毎にデータを保存するようにした。

Jul 30 2018

[bugfix] the issue about compile error on Windows

Jul 27 2018

[bugfix:0.3.6] Add GUI for diagonal folding on D4MatSlicerQ.py

D4MatSlicerQ.pyにも対角線Folding機能を動作させるGUIを追加した。

Jul 27 2018

[bugfix:0.3.6-devD4mat1] Unified names of python methods between UtsusemiD4Matrix and UtsusemiD4Matrix2, removed unuse codes, some small bugfixes.

  • UtsusemiD4Matrixの動作テスト終了

  • UtsusemiD4Matrixの不要なコードを削除

  • UtsusemiD4Matrix, UtsusemiD4Matrix2のPython利用のメソッド名を統一

  • UtsusemiD4Matrix2:::GetAxLimit()コアダンプする問題の修正

  • D4Matrix::SliceMat3Dのエラー計算に間違いがあるのを修正

  • vis/D4Mat2Slicer.py, D4Mat2SlicerQ.pyでのバグ修正

メソッド名は以下のように統一した

Slice2d 及び Slice3d のみを使用することに。

bool Slice2d( ElementContainerArray, list, list, ... )
ElementContainerArray Slice2d( list, list, list, ... )
bool Slice3d( ElementContainerMatrix, list, list, ... )
ElementContainerMatrix Slice3d( list, list, list, ... )

以下を廃止し、それに伴うコードの修正

  • UtsusemiD4Matrix2::Slice2D

  • UtsusemiD4Matrix2::Slice3D

Jul 26 2018

[bugfix:0.3.6-devD4mat1] Add Python methods which has same name as UtsusemiD4Matrix2 and do refactoring of OutputText3D method

  • OutputText3Dのスライス部分を_SliceMatで置き換えた(リファクタリング)

  • UtsusemiD4Matrix2とPythonから使える関数名を揃えるために Slice2d (<- SliceMat ) 及び Slice3d (<- SliceMat3D )を追加。

Jul 23 2018

[bugfix:0.3.6-devD4mat1] Add method for diagonal folding on D4Matrix and rename to UtsusemiD4Matrix for refactoring

D4Matrixに対角線Folding機能を付加する。 ついでに関数名の統一のために新たにUtsusemiD4Matrixクラスを作成し、そこで以下を行なった。

  • 対角線Foldingの追加

  • リファクタリング(スライスコードの統合)

Jul 13 2018

[update:0.3.6] small improvement of Makefile

Jul 12 2018

[bugfix:0.3.6] fix the issue that histogram creation on manyo-Emaki causes core dump.

manyo-Emakiでのヒストグラム化でコアダンプする問題を解決した。

0.3.6になって、FrameBoundaryの扱いを変更した際に、必ずPixelPosition情報が必要な形になっていた。 匠の場合、処理的にはtofでTime Focusingするため、PixelPosition情報は不要であり、EmakiReadout1dEventDecoder.cc内で _isRequiredPosiInfo=falseとしている。 結果、PixelPositionがないのにFrameBoundaryを指定しようとしてエラーとなった。

それを回避するために、TOFでFrameBoundaryを指定する際には、PixelPosition情報が不要とした。 ただし_pixelPositionVectのサイズの形でPixelIdの最大値は必要なので、NULLで_pixelPositionVectを与えるようにした。

Jun 29 2018

[bugfix:0.3.6] fix the issue of wrong treating arguments of UtsusemiD4Matrix2::AllocateD4MatOnDisk and add CLI method for UtsusemiD4Matrix2 and UtsusemiSqeCalc

D4Mat2SlicerのAllocateD4MatOnDisk機能をPython CLIから使うために引数をPython Listで与える場合に、引数のチェックが間違っていたのを修正した。

ここでUtsusemiSqeCalcのCLIとメソッド名、及び戻り値の統一を図っている。

PyObject* UtsusemiD4Matrix2::PutQRange

使いやすくするために、UtsusemiD4Matrix2にGetAxLimitの結果をリストで返すメソッドを追加

vector<Double> UtsusemiSqeCalc::GetAxLimit()

追加

PyObject* UtsusemiSqeCalc::PutQRange()

戻り値をListに変更

Jun 29 2018

[Update:0.3.6] add new methods for CLI to UtsusemiD4Matrix2 and do refactoring.

D4Mat2Slicerの機能をPython CUIから使えるようにするために、UtsusemiD4Matrix2に以下のメソッドを追加し、リファクタリングした

  • UtsusemiD4Matrix2::Slice2D

  • UtsusemiD4Matrix2::Slice3D

ここでUtsusemiSqeCalcのCLIとの親和性を高めるため、Python Listの解釈部分を共通の UtsusemiSqeCalcXmlParamsクラスを利用するようにした。

またSlice3Dに対しても利用できるように

  • UtsusemiSqeCalcXmlParams::SetSliceAxes

も改良した。

結果として、以下のような形に統一されることになる。

UD = Manyo.Utsusemi.UtsusemiD4Matrix2()
...
eca = Manyo.ElementContainerArray()
UD.Slice3D( eca, ax1, ax2,... )
Jun 29 2018

[update:0.3.6] attempt to decrease memory used for D4Mat2

Jun 29 2018

[bugfix:0.3.6] fix the issue that the file path of data reduction script saved in a param file is not loaded on D4Mat2Slicer(Q)

D4Mat2Slicer(Q) において、Param Fileを読み込んだ時に、Data Reduction用スクリプトが正しく読み込まれないことに対処した。

Jun 29 2018

[bugfix:0.3.6] fix codes to improve actions for On-Line Mode button on D4Mat2Slicer(Q)

D4Mat2Slicer(Q) において、”On-Line Mode” ボタンの挙動(起動直後に押せるとか)がおかしい部分を修正した。 D4Mat2SlicerQで仕様どうりに動作しない部分を修正した。

Jun 28 2018

[update:0.3.6] Remove out-of-use comment lines.

Jun 28 2018

[debug:0.3.6-devD4mat2] D4Mat2SlicerQ does not work.

Jun 28 2018

[update:0.3.6-devD4mat2] Update codes to use external script of data reduction on OnLine differential treatment in D4Mat2Slicer(Q)

D4Mat2Slicer(Q)のOnLineモードにおいて、データリダクション用外部スクリプトを使えるようにした。 外部スクリプトを利用しない場合はこれまで通り、利用する場合にはデータリダクション関数の実行に時間がかかることもあり、 スライス+プロッタとの連携がうまくいかないので、以下のように流れを変更した。

1

OnAUupdate

2

OnAUstart

3

OnAUupdate

以下を繰り返す

  • そこまでのデータでスライス+プロッタ

  • Update

  • Data Reduction

Jun 28 2018

[update:0.3.6-devD4mat2] fefactoring UtsusemiD4Matrix2 to unify codes having same role.

UtsusemiD4Matrix2内の同じ役割を持つコードを統合した。 ImportEcmsContRotとImportEcmsContRotPseudoOnLineで使用される同等部分をImportEcmContRotで統合した。 角度のCaseIdで高速にImportEcmを回す場合(ImportEcmsContRotとImportEcmsContRotPseudoOnLine)も、各角度ごとにデータリダクションを行なってImportEcmを行う場合も同じ ImportEcmContRot を使用できるようになった。

Jun 26 2018

[update:0.3.6-devD4mat2] update and refine codes to save a template file for external python script for data reduction on D4Mat2Slicer(Q)

D4Mat2Slicer(Q) の連続回転測定処理モードで、データリダクション用に外部のスクリプトのテンプレートを保存できるようにした

作業残り

OnLineでの動作確認

Jun 26 2018

[bugfix:0.3.6] the issue of wrong measurement periods returned from MakeRunList when there are several files from one module (numbering)

Jun 26 2018

[update:0.3.6-devD4mat2] update codes to use external python script for data reduction on D4Mat2Slicer(Q)

D4Mat2Slicer(Q) の連続回転測定処理モードで、データリダクション用に外部のスクリプトを利用できるようにした

作業残り

Templateファイルの書き出し部分とOnLineでの動作確認

Jun 26 2018

[update:0.3.6-devD4mat2] update codes to use mask file in continuous rotation mode on D4Mat2Slicer and D4Mat2SlicerQ

D4Mat2Slicer(Q) の連続回転測定処理モードで、マスクファイルを使用できるようにした。

Jun 26 2018

[update:0.3.6-devD4mat2] apply the change of D4Mat2Slicer to D4Mat2SlicerQ

D4Mat2SlicerのアップデートをD4Mat2SlicerQへ適応させた。 また、実行中に発生したいくつかのバグ(GUIとの連携部分)も修正した。

Jun 26 2018

[update:0.3.6-devD4mat2] remove useless lines

Jun 25 2018

[bugfix:0.3.6] UtsusemiSqeCalcXmlParams does not load correctly the rotateion steps

UtsusemiSqeCalcXmlParams::LoadFile でXtalParam.xmlを読み込んだ時に

<visualContParams/sampleInformation/orientation/rotateSteps>

のフォーマットを正しく読み込めていなかった。 本来はY:-50.0,Z:30.0 とカンマ区切りで回転軸と値を指定するのが仕様だが、最初の一つの軸しか読み込めていなかった。

Jun 25 2018

[update:0.3.6:devD4mat2] Refactoring D4Mat2Slicer and UtsusemiD4Matrix2

UtsusemiD4Matrix2のメソッドに関してD4Mat2Slicer内での使用状況から以下のような変更を行った。

  • できるだけ引数の数を減らす

  • 単機能のメソッドに分ける

  • 同じ設定をしている部分を統合した

また、同じようなメソッド名が使用されているので メソッド名で機能をわかりやすくなるように変更した。

削除

UtsusemiD4Matrix2::SetCrystalParameters

UtsusemiD4Matrix2::ImportEcms

UtsusemiD4Matrix2::ImportEcmsContRotPsuedOnLine

追加

UtsusemiD4Matrix2::SetCrystalParametersFromInnerHead

UtsusemiD4Matrix2::SetD4MatSampleInfo

UtsusemiD4Matrix2::SetD4MatDataReductionInfo

UtsusemiD4Matrix2::SetD4MatProjectionAxesInfo

UtsusemiD4Matrix2::SetD4MatRunNo

UtsusemiD4Matrix2::ImportEcmsContRot

UtsusemiD4Matrix2::ImportEcmsContRotPseudoOnLine

削除予備軍

UtsusemiD4Matrix2::SetD4MatParameters

Jun 25 2018

[update:0.3.6] improve titles of 2DPlot

M2Plotでシングルプロット状態の時のサブタイトルの位置を変更した。

Jun 25 2018

[update:0.3.6] improve titles of 2DPlot ( D4Matrx and VisualContM )

VisualContMとD4MatSlicerで、2Dプロットをした時に、Foldingの情報もTitle(sub)に表示するようにした。

Jun 20 2018

[update] Update codes for renaming to UtsusemiD4Matrix2

Jun 20 2018

[update] rename UtsusemiD4MatOnMem2 to UtsusemiD4Matrix2

Jun 19 2018

[update:0.3.6] improve CUI for D4Matrix

D4Matrixをより簡単にPythonからCUIで利用できるように、戻り値をboolやlistに変更した。

D4Matrix::OpenMat

D4Matrix::AddToMatFromBin

D4Matrix::AddToMatFromBinFolder

D4Matrix::AllocateNewMat

D4Matrix::SliceMat

D4Matrix::SliceMat3D

D4Matrix::OutputText3D

D4Matrix::DumpD4MatToFile

D4Matrix::EstimateRangeOfVirtualMat

D4Matrix::AllocateNewMat

またそれに伴うコードの変更、及びコメントの修正・追記などを行なった。

Jun 19 2018

[update:0.3.6] improve CUI for D4Matrix and small bugfix

D4MatrixをよりPythonからCUIで利用できるようにいくつかの機能を追加改変した。

  • Python Listを引数に利用できるようにした

    D4Matrix::AllocateNewMat

    D4Matrix::SliceMat

    D4Matrix::SetAxTitles

    D4Matrix::SliceMat3D

    D4Matrix::OutputText3D

    D4Matrix::DumpD4MatToFile

    D4Matrix::AllocateVirtualMat

    D4Matrix::EstimateRangeOfVirtualMat

    メソッド名も変更

  • Pythonで使う際に便利な機能を追加した

    D4Matrix::AddToMatFromBinFolder

    D4Matrix::SetRunNoForVirtualMatrix

    D4Matrix::ROTATE_AXIS_X

    D4Matrix::ROTATE_AXIS_Y

    D4Matrix::ROTATE_AXIS_Z

  • D4MatrixのVirtual Matrix Panelで指定できる Rotation で ‘Y’を指定しても利用されない問題を修正した

  • D4Matrix::PutSlicedECAの戻り値ECAをダイレクトにM2Plotに流し込むと強度がδhw分だけ大きくなる問題を修正した(ヘッダにisHistogram)

  • D4Matrixで引数にfoldingを与えるとき、空っぽでも大丈夫なようにした

  • UtsusemiSqeCalcにリテラルを減らすための定数を追加した

    UtsusemiSqeCalc::ROTATE_AXIS_X

    UtsusemiSqeCalc::ROTATE_AXIS_Y

    UtsusemiSqeCalc::ROTATE_AXIS_Z

  • ana/Reduction/D4Mat_Manyo.py バグ修正

  • vis/D4MatSlicer, vis/D4MatSlicerQ で D4Matrix::EstimateRangeOfVirtualMatを使用するように変更

Jun 15 2018

[update:0.3.6] improve initial values for arguments on DR.GetDataOfMonochroEi3

  • PulseHeightの初期値を”-“にした(WiringInfoの値をそのまま使用)

  • SIK/facade/DR.pyにも反映した

Jun 15 2018

[bugfix:0.3.6] some error vallues are nan

UtsusemiSubtractDarcBackground のエラー値がたまにnanとなる。 おそらく強度が負となっていたため、sqrtでおかしくなったと思われる。

Jun 15 2018

[update:0.3.6] Revise normalization factor in UtsusemiSubtractDarkBackground class

UtsusemiSubtractDarcBackground クラスでのノーマライズに使用する値を測定時間ではなくキッカー数にした。 試料のカウント数 - (試料測定キッカー数/ダーク測定キッカー数)*ダークのカウント数 を新たに試料のカウント数として定義するようにした。

Jun 15 2018

[update:0.3.6] Add UtsusemiSubtractDarkBackground class and script to treat this

DR.GetDataOfMonochroEi3の引数において TimeDepBack に、”DARK:<runNo>”の引数を与えられるようにした。 これにより、経過時間にのみ起因するダークバックグランドを引くようにした。 その際、UtsusemiSubtractDarcBackground クラスを利用する。 これにより、

試料のカウント数 - (試料測定時間/ダーク測定時間)*ダークのカウント数

を新たに試料のカウント数として定義するようにした。

Jun 15 2018

[update:0.3.6] Improve argmuments on DR.GetDataOfMonochroEi3

DR.GetDataOfMonochroEi3の引数において下記のようにした。

PulseHeight

値が一つの場合はPulseHeightの下限を与えるようにした。その時上限は4096となる。

BaseCommands

plitStringParametersの区切りとして:も使えるようにした。

Jun 15 2018

[update:0.3.6] Add new argmuments on DR.GetDataOfMonochroEi3 to give PulseHeight range and Time-depend-background

DR.GetDataOfMonochroEi3に以下の引数を与えられるようにした。

PulseHeight

Pulse Heightの範囲を与える。フォーマットはStringで:区切り “560:4096”

TimeDepBack

時間依存のバックグランドを与える。将来様々な指定方法がとられることを見越して今回はTOFで与えることを明確化するために、”TOF”キーを利用する(”TOF:36000-38000”)。

Jun 14 2018

[update:0.3.6] futurize D4MatSlicerQ.py D4Mat2SlicerQ.py for python3

Jun 14 2018

[update:0.3.6-devD4mat2Q] add closeEvent method for D4Mat2SlicerQ

Jun 13 2018

[update:0.3.6-devD4mat2Q] update codes to work at a grance

Jun 12 2018

[update:0.3.6-devD4mat2Q] Change object name of the sub window for data reduction panel

Jun 12 2018

[update:0.3.6-devD4mat2Q] Start D4mat2SlicerQ

Jun 5 2018

[update:0.3.6] Add new methods in CuiD2Chart.py to change the main and sub titles and axes labels

CuiD2Chartにタイトル(メイン・サブ)と軸ラベルを設定するメソッドを追加した。

  • CuiD2Chart::SetTitles( str mainT, str subT=”” )

  • CuiD2Chart::SetAxisLabel( str x_label, str y_label )

Jun 5 2018

[update:0.3.6] Improved CuiD2Chart.py to switch log scaling and apply smoothing

CuiD2ChartにLogスケールの設定とスムージングの設定を追加した。

  • CuiD2Chart::SetLog( bool Flag)

  • CuiD2Chart::SetSmooth( bool Flag[, float Window] )

Jun 1 2018

[update:0.3.6-devD4mat2] Refactoring about DataStoreContRot

Jun 1 2018

[bugfix:0.3.6-devD4mat2] ImportEcms is not working correctly on using D4MatGroup

UtsusemiD4MatOnMem2でD4MatGroupにECMを追加する際に、おかしなやり方をしてたのを修正。

Jun 1 2018

[update:0.3.6-devD4mat2] improve the treatment of SampleInfo values when the box is empty

D4Mat2Slicerで以下の点を改良 - SampleInfoの欄が空白の場合は、強制的に0.0を入れることにした。

Jun 1 2018

[update:0.3.6] Small improvements on GUI of D4MatSlicer2

D4Mat2Slicerで以下の点を修正した

  • DataReductionスクリプトのテンプレートの若干の変更

  • GUIのパーツの微調整

Jun 1 2018

[update:0.3.6-devD4mat2] update manyo/Makefile.obj

Jun 1 2018

[update:0.3.6-devD4mat2] update D4Mat2Slicer.py

D4Mat2Slicerで以下の点を改良した

  • XtalParam.xmlからの読み込みで、データリダクション用のスクリプトが正しく読み込めなかったのを修正

  • DataReuctionPanelで、ContRotationとStepByStepの個別設定部分をそれぞれパネル化し、パネルごとEnable制御するようにした。またアクティブでないときに枠線なども薄くなるようにした

  • DataReductionを繰り返し行うときにメモリリークが起きそうだったので、Clearするメソッドを実行するようにした

Jun 1 2018

[bugfix:0.3.6-devD4mat2] Fix some bugs on Utsusemi.i UtsusemiD4MatOnMem2.cc UtsusemiSqeCalcXtalParams.cc

以下のバグを修正

  • Utsusemi.i : UtsusemiSqeCalcXtalParamsが追加されていなかった

  • UtsusemiSqeCalcXtalParams : Rotation Stepsの情報取得部分に誤りがあった

  • UtsusemiD4matOnMem2.cc : いくつかメモリリークが考えられそうなところがあった

May 31 2018

[update:0.3.6-devD4mat2] Add new function to choose the script file to do Data Reduction by given script on Step By Step method

Step by Step解析で、データリダクションの部分を外部スクリプトを使用できるようにした。 また、テンプレートファイルを作成するようにもした。

May 31 2018

[update:0.3.6-devD4mat2] Add new function to chose Mask file on Data Reduction for Step By Step method

Step by Step解析において、DataReduction時のMask Fileを選択できるようにした。 - DataReductionパネルにGUIを追加

次は、Step by Step解析で、データリダクションの部分を外部スクリプトを使用できるようにするが、そのGUIを用意した。

May 30 2018

[bugfix:0.3.6] The issue that angle calculation is not correct for BL01

  • RunList.txtからのgonio値を、処理に必要な角度に変換する部分でBL01のデフォルトと異なるやり方だったので修正した

    • GUIの表示も First Angle から Gonio at Zero に変更

    • DataReductionPanel::RunListFirstGonio に関連するコードを削除

  • Projection情報が不要な場合(StepByStepでのDataReduction)でも試料や射影情報を取得している無駄な部分を修正

    • SampleParamなど不要な引数を作成、使用しているコードを削除

  • 試料情報の回転補正のテキスト欄がDisableにもかかわらず読み込んで値を得ようとしている部分があるのを修正

May 30 2018

[update:0.3.6-devD4mat2] Add new class to UtsusemiD4MatOnMem2 to reduce memory

UtsusemiD4MatOnMemは内部で全データをElementContainerArrayに保存している。これは将来ファイルへの保存を考えてのことであったが、全部のvectorがDoubleなので、非常にメモリを食う。一方で、D4matはもともとファイルサイズやメモリサイズを考慮し、floatにしている。 よってUtsusemiD4MatOnMemのデータ保持もfloatを使うように試してみた。

D4MatOne

1つの角度のデータを保持。

D4MatGroup

D4MatOneを保持。

それぞれHeaderBaseを持つ。結果としてメモリの使用量が半分になった。

May 30 2018

[update:0.3.6] Add new methods to UtsusemiD4MatOnMem for CUI control with Python List object

UtsusemiD4MatOnMemをPythonコマンドラインから簡単に使えるようにPythonリストを使えるようにした

UtsusemiD4MatOnMem::SetCrystalParameters

UtsusemiD4MatOnMem::SetD4MatParameters

UtsusemiD4MatOnMem::ImportEcms

UtsusemiD4MatOnMem::Slice2d

UtsusemiD4MatOnMem::Slice3d

UtsusemiD4MatOnMem::AllocateD4MatOnDisk

UtsusemiD4MatOnMem::ProjectionStepByStepd

May 30 2018

[update:0.3.6] Add new function to output SPE file on Step By Step mode of D4Mat2Slicer

D4Mat2Slicer で Step By Step モードの時に SPEファイルへの書き出しを可能とした

  • UtsusemiD4MatOnMem::ExportEcmFromStepByStepの追加

    • D4matに、PixelPositionやPolarAngle, AzimAngleの幅も記録

  • D4Mat2Slicer

    • Step By Stepモード時でのSPEファイルへの書き出し追加

    • ボタンの生死のコントロールをリファクタリング

May 29 2018

[update] add xml and mask files from BL

May 29 2018

[bugfix:0.3.6] small issues of D4MatSlicerQ.py

D4MatSlicerQ.pyで、下記のような問題があったので修正した

  • Slice3Dで uGao/SliceViewer3Dを起動できなかった

  • 起動直後にいくつかのパラメータの初期値が空だった

  • いくつかのファイルダイアログで、filterが効いていなかった

May 28 2018

[update:0.3.6] improve vis/CuiD2Chart.py to use ElementContainerArray

vis.CuiD2Chart.pyは、特に図を保存するために使用される。 このクラスにデータを渡す場合、これまではnumpyのmeshgridなどのmap形式のみだったが、D2Vis.D2Matrixクラスを利用してElementContainerArrayからでも渡せるようにした。

May 28 2018

[update:0.3.6] add UtsusemiSqeCalc::SaveXtalParam and bugfix of UtsusemiSqeCalcXtalParam::SaveFile

UtsusemiSqeCalc::SaveXtalParamを追加した。 またUtsusemiSqeCalcXtalParam::SaveFileを行った時のXtalParam.xmlのフォーマットに間違いがあったので修正した。

May 25 2018

[update:0.3.6-devSqe] refactoring D4Mat2Slicer.py

May 25 2018

[update:0.3.6-devSqe] refactoring D4Mat2Slicer.py

May 25 2018

[update:0.3.6-devSqe] remove unused comments

不要と思われるコメント文を削除した。

May 25 2018

[bugfix:0.3.6-devSqe] the issue that parameters of Data Reduction are not loaded correctly on TreatXmlParams in D4mat2Slicer

D4mat2Slicerの XtalParamから Data Reduction情報を読み取れない場合があるのを修正。 あと、GUI上のtypoを修正。

May 21 2018

[update:0.3.6-devSqe] improved TreatXmlParams on D4mat2Slicer

D4mat2Slicerの XtalParamから Data Reduction情報を読み取る時に、すでに入力済みのパラメータがあった場合に確認するダイアログを追加した。

May 21 2018

[update:0.3.6-devSqe] refactoring of UtsusemiSqeCalc and UtsusemiSqeCalcXtalParams

UtsusemiSqeCalc と UtsusemiSqeCalcXtalParams をリファクタリング。

May 21 2018

[update:0.3.6-devSqe] add new methods to enable to use python object as arguments

UtsusemiSqeCalcクラスに下記のメソッドで引数としてPythonのリストが使用できるようにした。

UtsusemiSqeCalc::SetLatticeConstants
UtsusemiSqeCalc::SetUVvector
UtsusemiSqeCalc::SetRotationSteps
UtsusemiSqeCalc::Projection
UtsusemiSqeCalc::Slice

これらは、UtsusemiSqeCalcXtalParamsクラスにPythonリストが使用できるメソッドを用意し、使用している。

また、XtalParam.xml読み込むメソッド

UtsusemiSqeCalc::LoadXtalParam

も追加した。

May 21 2018

[update:0.3.6-devSqe] rename VisuaCalcSqe to UtsusemiSqeCalc

VisualCancSqeクラスをUtsusemiSqeCalcに変更した。 またそれに伴う各コードの変更を行った。 さらに将来のpython-utsusemi/vis/VisContMParams.pyの置き換えへ向けてUtsusemiSqeCalcXtalParamクラスを追加した。

May 21 2018

[update] add AMR mask file

May 21 2018

[update:0.3.6] Change the order of searching

FindParamFilePathとFindTempFilePathにおけるサーチパスを以下のように変えた。

  1. カレントディレクトリ、もしくはフルパス

  2. UTSUSEMI_USR_DIR (/opt/mlfsoft/python-utsusemi/XXX/ana/xml)

  3. UTSUSEMI_USR_PRIV_HOME/ana/xml ( ~/ana/xml )

以前は2->3->1だったが、カレントディレクトリを優先することにした。

May 20 2018

[bagfix:0.3.6] the issue that UtsusemiSetMask cannot treat old Mask.txt format

Old mask treatment enable both “10.” and “10” format like below

5.0 5.1 5.2
10.
12.0 12.1 12.2

But UtsusemiSetMask ignore “10.” description.

May 18 2018

[update:0.3.6] Add new functions on Step By Step mode on D4MatSlicer2 and arrange GUI layout

D4Mat2Slicerに以下のような機能を追加した

  • 最初のRunの角度の値をRunListを読み込んでからでも再計算できるようにした

  • Step By Stepでの処理パラメータを保存・読み込みできるようにした

  • Data Reduction PanelのGUIの配置を最適化した

  • メインウィンドウのタイトルを”D4MatSlicer2”にした

May 18 2018

[update:0.3.6] Add Step By Step mode of D4Mat2Slicer

D4Mat2Slicer の Step By Step データの処理ができるように機能を加えた。 結果、ほぼrun_list.txtだけで解析ができるようになり、Projectionのやり直しが簡単になった。

同時に以下の仕様も追加した。

  • StepByStepモードの時は、On-Line Modeのボタンをdisabledに

  • Data Reduction “Execute” ボタンを押す前は “Project” はdisabledに

  • 一度Data Reduction “Execute”を押した後に Experiment “Setting” ボタンを押すと落ちる。

May 16 2018

[update:0.3.6] update functions in python-utsusemi-VNR/facade by Kasai-san

笠井さんの修正を反映した。

May 16 2018

[update:0.3.6] Add two color maps used in M2Plot to SliceViewer3D

SliceViewer3D の カラーマップに M2Plotで使用されている default と haxby を追加した。

May 14 2018

[bugfix:0.3.6] the issue that a kind way of description of mask.txt causes wrong results

テキストによるmaskファイルのフォーマットで、 X の時は問題ないが、 X.Y が一つだけ書かれている時に、XのPSD自体がマスクされてしまうバグがあったので修正した。

May 14 2018

[update:0.3.6] Change the way to show some messages from cout to UtsusemiMessage, UtsusemiError and UtsusemiWarning

cout を用いてメッセージ表示されていた部分のいくつかを UtsusemiHeader::UtsusemiMessage, UtsusemiError, UtsusemiWarningで置き換えた。また不要なメッセージも一部コメントアウトした。

この作業は継続的に行う。

May 7 2018

[bugfix:0.3.6] correct of the description for DetParam argument in GetNeunetHist

May 7 2018

[bugfix:0.3.6] the issue that Segmentation fault happens when detId described in WiringInfo does not exist in DetectorInfo

WiringInfoにあってDetectorInfoに記述のないdetIdにアクセスすると DetectorInfoEditorNeunet::Invalid detId (3000) のようにSegmentation faultが起きる問題に対処。 ない場合にないことを明確にする戻り値(空のVector)を戻すようにした。

Apr 26 2018

[update:0.3.6] remove DoMask function from DR.GetDataOfMonochroEi2 and DR.GetDataOfMonochroEi3

  • DR.GetDataOfMonochroEi2やDR.GetDataOfMonochroEi3では、内部でBaseCommands::DoMaskを使用していたが、これをUtsusemiGetNeunetHistogramのMaskInfoを使用するように変更した。

  • MakeRunListのファイルの保存先をカレントディレクトリがデフォルトになるようにした

Apr 23 2018

[bugfix:0.3.6] The issue that invalid value returns from UtsusemiNeunetEventDecoderBase::DecodeEventData

UtsusemiNeunetEventDecoderBase::DecodeEventDataは、有効なイベントならば

1 (_isNeuntronEvent)

2 (_isT0Event)

3 (_isClockEvent)

をunsigned intで返し、不適当なら0を戻す。にもかかわらず、不適当なイベント(特にフレームバウンダリが設定されている、かつClockがないパターンで-1を返すようにしていた。unsigned intとしては不適当であるから、明示的に0を返すようにした。他の部分でも不敵であるということを明示するために0を返すようにした。

Apr 12 2018

[bugfix:0.3.6] The issue that twice Add Files In Folder causes the failure to update progress bar.

D4MatSlicer で起動したまま連続して “Add Files In Folder”ボタンを押すと、プログレスバーの更新に失敗する問題を修正

D4Matrixデータを開いたまま新しいD4Matrixデータを作成する場合に、ファイルがクローズされていない可能性があるため、それを修正

Apr 12 2018

[bugfix:0.3.6] The issue that ana.Reduction.BaseCommands.VisContMOutputFileByPhi does not work correctly with XtalParam.xml including given rotation steps

回転測定での処理VisContMOutputFileByPhiにおいて、軸回転情報が含まれているXtalParam.xmlを用いた場合に、回転情報が正しく反映されない問題を修正した。

VisContMParams.pyで入力されたPhiがSampleRotationStepsが空でないと加えられないという処理だったため。

Apr 10 2018

[update:0.3.6] Add method to convert data to SPE files in D4Mat2Slicer

D4Mat2Slicerに、データをSPEファイルに出力する機能とボタンを追加した。ただし動作確認はできていない。

Apr 9 2018

[bugfix:0.3.6] The issue that the masked data points are not treated correctly from VisualCalcSqe::ConvertToD4Mat and D4Mat::AddToMatFromBin

VisualCalcSqe::ConvertToD4Matによるvbinファイルの書き出し、および、vbinファイルからD4Matrixへの書き込みの両方で、エラー値が負の場合に無視するように変更した。

[bugfix:0.3.6] The issue that the masked data points are not treated correctly at Slice in VisualCalcSqe

VisualCalcSqe::Slice で、masked されたデータ点( error<0 )を正しく処理できない問題

Apr 6 2018

[bugfix:0.3.6] Change arguments of “Options” in GetNeunetHist

TOF binをヒストグラムに加えるオプションのキーを AddTofBin とした。

[update:0.3.6] Unify arguments “AnaMode” and “ParamFiles” in GetNeunetHist()

BaseCommands::GetNeunetHistの”AnaMode”と”ParamFiles”のパラメータを一つの”AnaMode”で指定するようにした。

<mode>

<mode>で指定したenviron_ana.xmlのパラメータファイルを使用

<mode>,-,-

上と同じ意味

<mode>,<wfile>,-

<mode>で指定したenviron_ana.xmlのパラメータファイルを使用するが、WiringInfoは指定したものを使用

<mode>,<wfile>,<dfile>

<mode>で指定したenviron_ana.xmlのパラメータファイルを使用するが、WiringInfoとDetectorInfoは指定したものを使用

など。また、これを利用するコード

  • AMR/facade/Cmm.py

  • SIK/facade/Cmm.py

  • VNR/facade/Cmm.py

も変更した。

Apr 5 2018

[update:0.3.6] Add methods to change flag to add tof binning vector to each EC, Change DoMask facade to use UtsusemiSetMask

UtsusemiGetNeunetHistogram::SetFlagToAddToTofBin(bool) を追加した。

これはヒストグラム化した時に各ElementContainerにTOFのvectorも追加するかどうか決定するものである。デフォルトはFalse。

またこのフラグを変更できるように BaseCommand::GetNeunetHist(Options) で”IsAddTofBin:True”を認識するようにした。

これがOptionsに含まれていると、フラグをTrueにする。

さらに、DoMaskファサード内で使用するものとしてDataReduct_SJYを使用しないようにした。

[bugfix:0.3.6] the issue of buttons position in SequencerQ using with X11 remote login

Apr 4 2018

[bugfix:0.3.6] the issue that obsolete file path description are used.

  • 古いファイルパスをgetVNRConst.pyを利用して下記のように修正 /usr/local/mlf/VNR/ana/xml -> getVNRConst.GetUserDir(),”ana”,”xml”

[bugfix:0.3.6] the issue of incorrect treating of events, the issue that obsolete file path description are used.

  • VNR用イベントリストを正しく扱えていない問題を修正

  • 古いファイルパスをgetVNRConst.pyを利用して下記のように修正 /usr/local/mlf/VNR/ana/xml -> getVNRConst.GetUserDir(),”ana”,”xml”

Mar 30 2018

[update] bashrc.XXX

[bugfix:0.3.6] MPlot: the issue that the expanded plotting area gets back to original size by removing check of Auto Scale at SettingParam Dialog.

MPlotでプロッタ上で拡大表示した後にスケールを変えるためにParamダイアログ上で Auto Scaleチェックボックスのチェックを外すと、拡大されていた表示が戻る問題に対処した。

Mar 29 2018

[bugfix:0.3.6] Give suitable return values in methods of UtsusemiTrignetDictionary and UtsusemiGetNeunetHistogram

以下のメソッドに正しい戻り値が指定されていなかったので修正した。 UtsusemiTrignetDictionary::SetCyclicRegion UtsusemiGetNeunetHistogram::LoadEventDataFiles

Mar 28 2018

[bugfix:0.3.6] Fixed Makefile.obj.vc for Windows compiler

[update:0.3.6] Add python-utsusemi-VNR

Mar 13 2018

[bugfix:0.3.6] The issue that frameInfo does not work correctly

FrameBoundary解析で、以前のフォーマットであるframeNoが2や3かつboundaryが指定されている時に正しく動作しなかった問題に対処。 これで以下のようなフォーマットに対応。

<frameInfo frameNo="2" boundary="3514.45" /> <!--今回問題だったフォーマット-->
<frameInfo frameNo="1" boundary="3514.45" type="tof" />
<frameInfo frameNo="1" boundary="11.4" type="lambda" />
<frameInfo frameNo="1" boundary="150.0" type="energy" />
<frameInfo frameNo="1" boundary="150.0" type="ei" />
<frameInfo boundary="3514.45" /> <!-- frameNoがなくてもOK. TOFのバウンダリとして有効 -->

<!--以下は無視される(エラーは出ない)-->
<frameInfo frameNo="0" />
<frameInfo frameNo="1" />
<frameInfo boundary="-2.5" />
Mar 10 2018

[update:0.3.6] Add calculation for an inverted geometry to KiKfCorrection

KiKfCorrectionにDNA用のInverted Geometryのデータに対応するように変更した。

Feb 28 2018

[Bugfix:0.3.6] the issue that core dump happens when parameter files do not exists

UtsusemiEventDataConverterXXX::LoadParamFiles -> UtsusemiXXXEventDecoderBase::SetParametersFromFiles において、WiringInfoやDetectorInfoが存在しないなど何らかの問題があった時にCore Dumpで落ちるのを修正した。

LoadParamFilesの戻り値をboolとして、状態を上へ戻すようにした。 それに伴い、LoadParamFilesを利用しているUtsusemiGetNeunetHistogramやUtsusemiGetRPMTHistogramも対応させた。 またSetParametersFromFiles内でメモリリークの原因となる部分も修正した。

Feb 23 2018

[Update:0.3.6] Add new method SetSamplePosition

これまで試料の位置を装置座標系の原点(0,0,0)としていたが、試料環境などで試料位置を原点に置けない場合がある。 そこで試料の位置を装置座標系で与えることができるようにした。

ただし注意点がある。

  • 本件で与えられる試料の位置情報は、PixelPositionからL2を計算するときにのみ使用される

  • L1は変更を受けないので、L1は別途計算して与える必要がある

よってSetSamplePositionを行なった場合、SetL1も同時に行う必要がある。

Feb 21 2018

[bugfix] M2Plot : improve SaveAsText dialog to avoid choosing wrong inadequate file, like invisible file

Feb 21 2018

[bugfix] M2Plot : improve SaveAsText dialog to avoid choosing wrong inadequate file, like invisible file

Feb 21 2018

[update] add BL02(DNA) codes and environment.

Feb 14 2018

[Update] branch 0.3.6 : Improve creation histogram methods

イベントデータの読み込み+ヒストグラム作成でのエラーが捉えられない問題に対処。 - データがない - パラメータファイルが読まれていない などC++でのヒストグラム作成時に発生するエラーを上にあげるようにした。 とりあえず、これまでキャッチできなかったエラーをPythonのGetNeunetHistで捕まえることが可能に。

あと、間違ったメッセージに気づいたので修正(UtsusemiWiringInfoEditorTemplate.cc)

Feb 7 2018

[Bugfix] Wrong logic to make differential T0 index list to be used to PreIncrement.

  • PreIncrement に渡す時のT0Indexの計算に間違いがあった。

  • newしたのにdeleteしていない箇所があった。

Feb 4 2018

[bugfix] some bug fix on python3

  • “file” コマンドを “open” コマンドに

  • VisualContQのTabの挙動がおかしいのを修正

Feb 2 2018

[update] new branch for Python3 and update codes using futurize –stage1

Python3をにらみ, とりあえず futurize –stage1 をかけた。主に、Python3で動かす予定のQt系を中心に。

ana/Reductionでvisに関連するものは新たに追加してみた。

  • CuiCtrlVisContQ.py

  • D4MatQ_Manyo.py

これらを呼び出す

  • BaseCommands.py

  • vis/D4MatSlicerQ.py

  • vis/VisualContQ.py

なども書き換えている。

Jan 29 2018

[update] remove obsolete codes in python-utsusemi/ana/Reduction

Python3をにらみ、できるだけ不要なコードをなくす方向で、obsoleteフォルダを作成し、不要なコードは退避させた。

不要なコード(obsolete行き)

  • Histogram

  • EventDataToEcm.py

  • AnaEnviron.py

不要にしたいが他で使用されているコード

  1. DataReduct_SJY.py <- BaseCommands::DoMaskで使用

  2. EditWiringFile.py <- AutoCorrectPsdParams.pyで使用

  3. sub1.py <- Vanadium.pyで使用

  1. DoMask内で、xmlもtxtもUtsusemiSetMaskに置き換えた。

    動作チェック -> OK 結果、DataReduct_SJY.pyはobsolete行き

  2. AutoCorrectPsdParams内で、EditWiringFileの部分をWiringInfoEditorNeunetで置き換えた。

    ただし、PutPsdParamに相当するメソッドがなかったので、急遽作成した。 動作チェック -> OK 結果EditWiringFile.pyもobsolete行き

  3. Vanadium.pyは一から作り直すつもりで、obsolete行き。

    よってsub1.pyもobsolete行き。

Jan 26 2018

[bugfix] the issue that new FrameBoundary treatments does not work correctly with given “lambda” and “energy” type.

FrameBoundary解析で、Boundaryを波長(type=”lambda”)やエネルギー(type=”energy”)で処理した時に正しく動作しなかったのを修正。

Jan 25 2018

[bugfix] the issue that FrameBoundary treatments does not work correctly

  • FrameBoundary解析で、きちんとバウンダリを指定しているのに、正しくTOFがシフトされないイベント(フレーム)が多数存在したので、それを修正した。

  • T0TreatToolsにも問題があったので同時に修正した

  • 内部でmagic number (3) があったのをなくした

Jan 23 2018

[bugfix] the issue that azimuth angle calculation returns invalid value when y of pixel position is 0

PixelポジションのY軸が0の時、Azimuth角を計算すると正しい値を返さない問題を修正。 Y軸が0の場合、X>=0 なら Azimuth = 0.0、 X<0 なら 180.0とする。

Jan 23 2018

[update] Removed unused visualization codes

python-utsusemi/vis内の不要な可視化コードを obsolete/フォルダに移動した。削除候補。

Jan 15 2018

[bugfix] No default value of ‘dat’ argument at Cmm.SaveDataToSrlz

Cmm.SaveDataToSrlzの引数にデフォルト値が記述されていなかったために、Sequencerで読み込むと正しく引数が解釈されなかった問題を解決した。

Jan 10 2018

[update] Calculate ABC parameters for new added PSDs at BL14

BL14に新たに設置されたPSDのABCパラメータを計算し、WiringInfo_180110.xmlとして作成した。 またRunNo 20717 以降のデータはこれを使うようにした。

Jan 9 2018

[bugfix] wrong format on argument of Cmm.DetectorEffi

Jan 9 2018

[update] Add Cmm.DetectorEffi and DetEffiMatrix data file with Ef=0.05:1024:400, theta=-20.0:1024:25.0

  • Add Cmm.DetectorEffi function

  • Make and add DetEffiMatrix file

Jan 9 2018

[update] import Latest WiringInfo, DetectorInfo into git

Jan 8 2018

[update] unify the argument name and initial value of ProtonCurrent(CT8neutron) Normalization with ‘isCT8n’ and True for BL01

BL01環境において、CT8neutronによるプロトンカレントの規格化を行う引数の名前を’isCT8n’ に統一し、そのデフォルトをTrue(使用する)にした。

Jan 4 2018

[update] Enable to treat error when wrong arguments are given at SetRangeOfSingleTimeSlicing

SetRangeOfSingleTimeSlicingメソッドで誤った引数を与えた時に、わかりやすいエラー(bool)を返すようにメソッドと戻り値を変更した。それに伴い、SetRangeOfSingleTimeSlicingを用いるコードに修正を加え、エラーを表示するようにした。