This documentation was copied from RCNPAX::
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
Last Update : 28-MAR-1996