Directory LIB$DISK:[QPAW.TAMII.DOC] QPAW-SYSTEM.TXT;1 37/40 21-OCT-1995 03:13:26.79
QPAW−system 〜民井バージョン〜
1.QPAWシステム
QPAWシステムは、CERNで開発されたPAWシステムをもとにして、RUN
のスタート、ストップや、ヒストグラム、パラメーター、ゲートの設定をインターア
クティブに行えるようにしたものです.これまでRCNPで広く使われていたQシス
テムのアナライザーや、ヒストグラム、パラメーター、ゲートの定義ファイルをその
まま使えます.ただし、これまでVAX上で動かしていたフォートランのプログラム
を、アルファ上で動かせるため、若干のデバッグが必要かもしれません.
RCNPの汎用計算機RCNPAXとオンライン用計算機YAYOIのライブラリ
ディスクにQPAWシステムのライブラリルーチンやユーザーコマンド、ユーザール
ーチンのサンプルが入っています.開発当時から様々な改良が行われた結果、現在で
は標準的なQPAWシステムに加えて、ベータバージョン、民井バージョンがありま
す.RCNPAXのライブラリには全てのバージョンが入っています.一方、YAY
OIには民井バージョンだけが入ってます。
このマニュアルで説明する民井バージョンは、民井システムのデータを、YAYO
I上でTCP/IPプロトコルを使って受け取り、オンライン解析するために作られ
ました.現在では、市原システムのデータもオンライン解析できるように改良されま
した.また、ディスクからデータを読み込むことや、ディスクに送られてきたデータ
を書き込むことも出来ます.
<QPAWシステムの概要>
QPAWシステムでは、アナライザープログラムを起動すると、複数のプロセス間
で共有されるメモリ空間が作られます。その後、PAWを起動すると、このメモリ空
間をみて、ヒストグラムを表示します。ヒストグラム、パラメーター、テストはアナ
ライザーの起動後、メモリ空間があれば、いつでも定義できます。
オンライン解析で使用するときには、MUSEやRCNPM1、RCNPM2側で
サンプリングして送られてきたデータを、YAYOI側で受け取り、データを解析し
ます.データをディスクに書き込むのはMUSEやRCNPM1、RCNPM2側で
行います.民井システムのデータか、市原システムのデータかは、アナライザーの起
動時に選択します。
2.プログラムのインストール
<ログイン>
ここでは、YAYOIで使うときを例にします。
YAYOIでは、QPAWを使うためのアカウントQUSERを用意しています.
QUSERにログインした後、M1やM2の様に、ディレクトリ名を尋ねてきます.
以下の例では、QPAWというディレクトリに入ります.このとき、ログインコマン
ドファイルがあれば実行します.
Welcome to OpenVMS AXP (TM) Operating System, Version V6.1-1H1
Username: QUSER
Password: rcnpdap
Welcome to OpenVMS AXP (TM) Operating System, Version V6.1-1H1 on node YAYOI
Last interactive login on Friday, 20-OCT-1995 17:03:18.15
Last non-interactive login on Friday, 20-OCT-1995 21:14:01.69
Input your (group's) name. (Used for subdirectory.): QPAW
USER$DISK:[QUSER.QPAW] was assigned as MYDIR:
DATA$DISK:[QUSER.QPAW] was assigned as DATA:
Will you use QPAW system ? : y
----------------------------------------------------------------------------
意匠製作中
----------------------------------------------------------------------------
<ディレクトリの設定>
まず、以下のようにディレクトリを設定します.
USER$DISK:[QUSER.QPAW] QPAWシステムを使うためのホームディレクトリ
USER$DISK:[QUSER.QPAW.MACRO] PAWシステムのマクロ
USER$DISK:[QUSER.QPAW.HISTOGRAM] ヒストグラムの定義ファイル
USER$DISK:[QUSER.QPAW.PAR] パラメーターファイル
USER$DISK:[QUSER.QPAW.TST] テストファイル
USER$DISK:[QUSER.QPAW.PROC] 実験グループ固有のアナライザープログラム
これらのディレクトリは、以下で述べる"qtt.com"を起動すると、それぞれ、
USER$DISK:[QUSER.QPAW] QPAW$HOME
USER$DISK:[QUSER.QPAW.MACRO] QPAW$MACRO
USER$DISK:[QUSER.QPAW.HISTOGRAM] QPAW$HIST
USER$DISK:[QUSER.QPAW.PAR] QPAW$PAR
USER$DISK:[QUSER.QPAW.TST] QPAW$TST
USER$DISK:[QUSER.QPAW.PROC] QPAW$PROC
という論理名が付けられます.
<ファイルのコピー>
QPAWシステムのほとんどのプログラムは、ライブラリディスクに入っています.
ユーザーは、以下のディレクトリに入っているファイルをコピーします.
実験グループ固有のプログラムは、Qシステムで使っていたものを使います.サン
プルとして、
LIB$DISK:[QPAW.USER.PROC]
に、(p、2p)グループで使っているプログラムが入っています.
ライブラリから
LIB$DISK:[QPAW.USER]
qans.com, qstart.com, qend.com, qtt.com, link.com
---> USER$DISK:[QUSER.QPAW]
LIB$DISK:[QPAW.USER.PROC]
cmp.com, compile.com ---> USER$DISK:[QUSER.QPAW.PROGRAM]
LIB$DISK:[QPAW.USER.MACRO]
*.kumac, *.for ---> USER$DISK:[QUSER.QPAW.MACRO]
(注意) RCNPAXでは、ライブラリのディレクトリは、
LIB$DISK:[QPAW.TAMII.USER]
LIB$DISK:[QPAW.TAMII.USER.MACRO]
です.
Qシステムで使っていたファイル
RCNPM2::USER$DISK:[QUSER.username.PROGRAM]
proc*.for,*cntl.for,*.inc ---> USER$DISK:[QUSER.QPAW.PROC]
RCNPM2::USER$DISK:[QUSER.username.HISTOGRAM]
*.hse ---> USER$DISK:[QUSER.QPAW.HISTOGRAM]
RCNPM2::USER$DISK:[QUSER.username.PAR]
*.par ---> USER$DISK:[QUSER.QPAW.PAR]*.par
def.par ---> USER$DISK:[QUSER.QPAW.PAR]prm.def
RCNPM2::USER$DISK:[QUSER.username.TST]
*.tst ---> USER$DISK:[QUSER.QPAW.TST]*.tst
<プログラムのコンパイル、リンク>
次の順序でアナライザーを作ります.
(1)コンパイル
ディレクトリ内の全てのサブルーチンをコンパイルするときは、
QPAW> set default [QUSER.QPAW.PROGRAM]
QPAW> @compile
Name of Object Library: p2p
Compiling P2P_CNTL.FOR ...
Compiling P2P_LIB.FOR ...
Compiling P2P_PROC4.FOR ...
Compiling P2P_PROC5.FOR ...
Compiling P2P_PROC6.FOR ...
QPAW> .....
ひとつのサブルーチンのみをコンパイルするときは、
QPAW> @cmp
Name of Object Library: p2p
Filename: P2P_cntl
Compiling P2P_CNTL.FOR ...
Filename: RET
QPAW> .....
(2)リンク
QPAW> set default [QUSER.QPAW]
QPAW> @link
Name of Object Library: p2p
Analyzer Name: p2p
LIB$ = CERN:[PRO.LIB]MATHLIB/LIB,PHTOOLS/LIB,PACKLIB/LIB,KERNLIB/LIB
QPAW> .....
QPAWシステムを使うための準備は以上で終わりです.
3.使い方
<アナライザーの起動>
アナライザは以下のように起動します.
QPAW> @qstart
ANALYZER NAME P2P
DIRECTORY USER$DISK:[QUSER.QPAW]
PROCESS EVENT 6,8,9
TAMII or ICHIHARA TAMII
DISK or REMOTE HOST REMOTE
DATA COPY N
REMOTE HOST PORT # 1126
REMOTE HOST IP ADDRESS 133.1.176.24
ARE PARAMETERS OK? : y
%DCL-I-SUPERSEDE, previous value of QPAW$EXEC has been superseded
%DCL-I-SUPERSEDE, previous value of QPAW$TEMP_DISK has been superseded
_______________________________________________________________
| |
| Welcome to QPAW-system |
| |
| === Update item === |
| |
| |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%DCL-S-SPAWNED, process QUSER$HIST spawned
QPAW> ..........
設定を直したいときは、
ARE PARAMETERS OK? : ret
ANALYZER NAME [P2P]: ret
DIRECTORY [USER$DISK:[QUSER.QPAW]]: ret
PROCESS EVENT [6,8,9]: 4,5,6
TAMII or ICHIHARA [TAMII]: ichihara
from DISK or REMOTE HOST [REMOTE]: ret
Will you copy raw data ? [N]: ret
REMOTE HOST PORT NUMBER [1126]: ret
REMOTE HOST IP ADDRESS [133.1.176.24]: 133.1.176.22
ANALYZER NAME P2P
DIRECTORY USER$DISK:[QUSER.QPAW]
PROCESS EVENT 4,5,6
TAMII or ICHIHARA ICHIHARA
DISK or REMOTE HOST REMOTE
DATA COPY N
REMOTE HOST PORT # 1126
REMOTE HOST IP ADDRESS 133.1.176.22
ARE PARAMETERS OK? : y
%DCL-I-SUPERSEDE, previous value of QPAW$EXEC has been superseded
%DCL-I-SUPERSEDE, previous value of QPAW$TEMP_DISK has been superseded
_______________________________________________________________
| |
| Welcome to QPAW-system |
| |
| === Update item === |
| |
| |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%DCL-S-SPAWNED, process KAWABATA$HIST spawned
QPAW> ...
アナライザを起動すると、QUSER$HISTとQUSER$CHARの2つのサブプロセスが同時に
走ります.アナライザを起動したら、この2つのプロセスが走っていることを確認し
てください.また、QPAWシステムに必要な論理名の設定は同時に行われます.
QPAW> show process /sub
25-FEB-1995 04:26:35.96 User: username Process ID: 44E01854
Node: YAYOI Process name: "QUSER$HIST"
There are 3 processes in this job:
QUSER
QUSER$CHAR
QUSER$HIST (*)
QPAW> ..........
<アナライザの終了>
QPAW> @qend
=== Analyzer was ended.
QPAW> .....
<他のプロセスで>
他のプロセス(ウインドウ)ではロジカル名の設定をする必要があります.
QPAW> set def user$disk:[QUSER.QPAW]
QPAW> @qtt
<リモートホストとの接続>
QPAW> qcn
ただし、"@qstart"でアナライザを起動したときのポートナンバーとIPアドレス
を変更したいときは、
QPAW> qcn 1127 133.1.21.12
qcn port ip_address
ポートナンバーは、リモートホスト(サーバー)側で与えられます.よく使うホス
トのホスト名とIPアドレスを書いておきます.
muse 133.1.176.24
miho 133.1.21.12
rcnpm1 133.1.176.21
rcnpm2 133.1.176.22
<RUNのスタート>
QPAW> qru
<RUNの中断、再開>
QPAW> qsu
QPAW> qre
<RUNの終了>
QPAW> qfi
<リモートホストとの接続>
QPAW> qdc
<RUNの状態>
QPAW> qst
=== Now, the time is 23:39:08.41, on 20-OCT-1995 ===
=== RUN status : Waiting for "QCN". (Open Connection)
INIT = 0
DATA = 1 COPY = 0 DISK = 1 FILENAME =
CNCT = 0 PORT = 1126 IP_ADDRESS = 133.1.176.22
RUN = 0 SUS = 0 RUN# = 0 RW = 0
Event to Process = 4 5 6
START TIME :
Comment :
ENDED TIME :
Comment :
ANALYZED EVENT = 0
ANALYZED BLOCK = 0 (Not include comment block, 2nd block.)
TOTAL BLOCK = 0 DISK = 0
ANALYZED RATIO = 0%
<ヒストグラムの定義>
ヒストグラムの定義はQシステムと同様にできます。入力ファイルも全く同じ
ものが使えます。
また、ヒストグラムや以下で説明するテスト、パラメーターはRUNの途中でも
定義あるいは再定義ができます.
=1次元ヒストグラム=
QPAW> hsu x4/xp:11:-1000:1000:2/te:10/bl:1
name/xp:IND:low:up:step/te:tst/bl:blk
=2次元ヒストグラム=
QPAW> hsu x4y4/xp:11:-1000:1000:2/yp:12:-500:500:10/te:10/bl:1
name/xp:IND:low:up:step/yp:IND:low:up:step[/te:tst][/bl:blk]
定義されたヒストグラムを消すときは
QPAW> hsu ad7/de
name/de
ヒストグラムを定義し直すときは
QPAW> hsu x4/xp:11:-2000:2000:4/te:20/su
name/xp:IND:low:up:step[/te:tst][/bl:blk]/su
これらをファイルにまとめて、
QPAW> hsu @QPAW$HIST:p2p.hse
QPAW> hsu @QPAW$HIST:p2p.hse/de
QPAW> hsu @QPAW$HIST:p2p.hse/su
とすることもできます。
定義されたヒストグラムは、houtで画面に表示されます。
QPAW> hout
--- Max Number ---
BLK1 BLK2 BLK3 BLK4 BLK5 BLK6 BLK7 BLK8 BLK9 BLK10 TOTAL
1D-Hist 4 1 0 0 0 0 0 0 0 0 5
2D-Hist 3 0 0 0 0 0 0 0 0 0 3
--- 1D Histogram ---
No NAME INDx MIN MAX BIN INDy MIN MAX BIN TST BLK
1 AD1 1001 0 2000 1 0 0 0 0 0 1
2 AD2 1002 0 2000 1 0 0 0 0 0 1
3 AD3 1003 0 2000 1 0 0 0 0 0 1
4 AD4 1004 0 2000 1 0 0 0 0 0 1
5 ESEP 505 -6000 6000 2 0 0 0 0 121 2
--- 2D Histogram ---
No NAME INDx MIN MAX BIN INDy MIN MAX BIN TST BLK
1001 X4A4 21 -6000 6000 100 22 700 1300 10 121 1
1002 X4Y4 21 -6000 6000 100 23 -300 300 10 121 1
1003 X4X0 21 -6000 6000 100 221 -3000 3000 100 121 1
ひとつのヒストグラムのみを見る時は,
QPAW> hout x4a4
No NAME INDx MIN MAX BIN INDy MIN MAX BIN TST BLK
1001 X4A4 21 -6000 6000 100 22 700 1300 10 121 1
また、ファイルに書き出すには
QPAW> hout 10
とすると,ファイル"FOR010.dat"に定義されたヒストグラムが書き出されます。
<テスト>
ヒストグラムにかけるゲートのことです.定義の仕方は同様にできます。また、
テストファイルもQシステムと全く同じものが使えます。
QPAW> tsu 14,AND,10,11
または、ファイルにまとめて、
QPAW> tsu @QPAW$TST:p2p.tst
<パラメーターの設定>
これもQシステムと同様に定義できます。
QPAW> prm kcalib=1
または、ファイルにまとめて、
QPAW> prm @QPAW$PAR:p2p.par
設定したパラメーターの値を見るときは、
QPAW> prm kcalib
KCALIB= 0
<スケーラーの表示>
スケーラーはRUNの開始とともにカウントされ始めます.
QPAW> scl
Event_No.(Block_No.)= 678 Number_of_scalers = 64
CH Module-1 Module-2 Module-3 Modele-4 Module-5 Module-6 Module-7
0 10591 10514 925 905
1 884612 1112502 12621 22485
2 3743100 4200447 21718 11647
3 2113536 0 19125 19156
4 2550121 2712097 23006 22363
5 7357 8790 1027 0
6 8463 8987 857 723
7 11234 15704 2570 2492
8 16060 23377 5920 5775
9 94107 93895 0 0
10 80882 77205 0 0
11 746977 894658 0 0
スケーラーの値をクリアーするには,
QPAW> clr
==== Scaler cleared ===
4.PAW
<PAWの起動>
アナライザーで作られたヒストグラムは、PAWを起動して見ます.PAWで使わ
れるマクロファイルは、USER$DISK:[QUSER.QPAW.MACRO]に入っているものが使われま
す.ユーザーが独自に作るマクロファイルはこのディレクトリに入れておきます.
ヒストグラムはRUNの開始とともにフィリングを始め、RUNを再開するときに
は自動的にリセットされます.
PAWのバージョンはRCNPAXに入っているものと同じものです.
$ paw
The PRO version of the PAW X11 driver for PAW is selected.
Executing LIB$DISK:[CERNLIB.CERNAXP.PRO.EXE]PAWX11_U.EXE;3
******************************************************
* *
* W E L C O M E to P A W *
* *
* Version 2.05/22 21 October 1994 *
* *
******************************************************
Workstation type (?=HELP) =1 :
Version 1.21/10 of HIGZ started
=> Start of system login
=> End of system login. User login commands now starting
*** Using default PAWLOGON file "QPAW$MACRO:PAWLOGON.KUMAC"
Macro search order is Command
PAW >
マッキントッシュからYAYOI、RCNPAXにログインしているときには、
QPAW> @mac
Input IP number for this Macintosh: 133.1.152.172
としてから、
QPAW> paw
とします.
<hpl>
QPAWシステムでは、Qシステムと同様の使い勝手にするために、hpl.kumacを
用意しています.
PAW> exec hpl hplの起動
HPL> ...
HPL> x4 ヒストグラムの名前 ---> 表示
HPL> Cntl-Z hplの終了
PAW> ...
<ヘルプ>
HPL> /h
Command list (HPL)
/logx set log scale for x-axis (1-dim and 2-dim)
/linx set linear scale for x-axis (1-dim and 2-dim)
/logy set log scale for y-axis (1-dim and 2-dim)
/liny set linear scale for y-axis (1-dim and 2-dim)
/logz set log scale for z-axis (2-dim)
/linz set linear scale for z-axis (2-dim)
/cut set graphical cut Usage: /cut ( means test number)
/rcut reset graphical cut Usage: /rcut ( means test number)
/csum sum up events in the bound of cursor position
/cur set marker with graphical cursor
Usage: /cut; set graphical cursor;
set marker number [Macro cursor: num ? (=) ]
/rcur reset marker Usage: /rcur ( means marker number)
. execute for PAW
cnt+z exit from HPL
<ゲート>
HPL> /cut 1 ---> ゲートをかけたい位置でマウスをクリック ---> ダブルクリック
Maximum number of points= 2 reached
1 11 72.36420 203.3520
HPL>
MINUIT RELEASE 94.09 INITIALIZED. DIMENSIONS 100/ 50 EPSMAC= 0.44E-15
**********
** 1 **SET EPS 0.1000E-06
**********
FLOATING-POINT NUMBERS ASSUMED ACCURATE TO 0.100E-06
**********
** 2 **SET ERR 1.000
**********
HPL> /rcut 1 ---> ゲートをリセット
<イベント数の和>
HPL> /csum ---> 和を求めたい範囲でマウスをクリック ---> ダブルクリック
<マーカー>
HPL> /cur ---> マウスをクリック
Macro cursor: num ? (=)
HPL> /rcur ---> マーカーをリセット
<x軸、y軸の範囲>
HPL> /x:100:150 ---> 戻るとき HPL> /x
HPL> /y:10:100 ---> 戻るとき HPL> /y
<x軸、y軸、z軸スケール>
HPL> /logx ---> 戻るとき HPL> /linx
HPL> /logy ---> 戻るとき HPL> /liny
HPL> /logz ---> 戻るとき HPL> /linz
5.その他
<バージョンアップ>
QPAWシステムは、現在もデバッグや改良がたまに行われています.
バージョンアップのメッセージは、YAYOIにログインしたとき、QPAWを
起動したときに表示されますのでご注意ください.
<マニュアル>
このマニュアルは、YAYOIの横に置いておきます.実験中にコピーしてお持ち
帰り下さい.また、このマニュアルをftpでコピーしたものを以下のディレクトリ
に置いておきます.
YAYOI::LIB$DISK:[QPAW.DOC]qpaw-system.txt
RCNPAX::LIB$DISK:[QPAW.DOC]QPAW-system.txt
ただし、ftpでコピーしたものには図が入ってません.
いらないと思いますが...
<リファレンス>
QPAWシステムについて書かれたものは、
M.Kawabata & K.Tamura, RCNP Annual Report 1994 p170.
だけです.
<Thanks !>
QPAWシステムの製作やYAYOIを立ち上げる際、RCNPの外川氏、野呂氏
、大阪大学の井原氏に多大な協力をお願いしました.TCP/IP通信のプログラム
の作成については京都大学の民井氏に色々と助けて頂きました.
また、QPAWシステムを積極的に利用し、バグを見つけてくださった方々にこの
場をかりてお礼を申し上げます.今後も懲りずにお使いください.
おしまい.
yoshiMASA yuasa