March 22, 1999
The PAW version 2.10/09 is part of the 99 release of CERNLIB. The source files, binaries and libraries are available, via anonymous ftp, on the asis system:
ftp asisftp.cern.ch
The PAW support is done by:
The PAW related packages versions are:
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
The following subjects can be found in this page:
The HELP of several commands has been improved to have a better look in the html version of the reference manual
PAW > units +----+---------------------------------------+------------+-----------+------+ | Lu | File name | Format | Access | Recl | +----+---------------------------------------+------------+-----------+------+ | 10 | paw.metafile | FORMATTED | SEQUENTIAL| | +----+---------------------------------------+------------+-----------+------+ | 1 | bla.hbook | | DIRECT | | | 2 | Staff.hbook | | DIRECT | | | 3 | test.hbook | | DIRECT | | | 4 | /home/couet/cernlib/paw/demo/pawdemo | | DIRECT | | | | .hbook | | | | +----+---------------------------------------+------------+-----------+------+If the file name is too long it is printed on several lines.
null 0 10 0 10 ellipse 5 5 4 2 90 270
h/cre/1d 100 'essai' 1 0.9 1.1 v/cre x(1) h/get/abs 100 x v/pri x
h/cre/1d 100 'essai' 1 0.9 1.1 v/cre x(1) h/get/abs 100 x v/pri x
subroutine aaa()
print*,tan(1.279)
end
PAW > call aaa.f77
*** Break *** Bus error
( 0) 0x00254348 signal_handler + 0x1a0 [/cern/97a/bin/pawX11]
( 1) 0xc08562e0 _sigreturn [/usr/lib/libc.1]
( 2) 0xc1174d88 aaa_ + 0x70 [/tmp/aaa_4517.sl]
( 3) 0x00161e54 cscali_ + 0x64 [/cern/97a/bin/pawX11]
( 4) 0x00159a34 cskcal_ + 0x2f4 [/cern/97a/bin/pawX11]
Workaround:
Change the compiler options by executing the following macro:
appl comis quit
!setopt 'f77 -c +Z +ppu' f77
quit
ZEBRA/RZ/MAKE 20 [fnam] 4096 ! ! H CAL-ID
on a linux system, cannot be red on an AIX system after
binary ftp. It crashed there with the error message telling that
this file was not an rz file.
ON linux:
ZEBRA/RZ/MAKE 20 bla.rz 4096 ! ! H CAL-ID cdir //lun20 mdir FOPI ! H Cal-id fortran/close 20on AIX:
RZ/FILE 24 bla.rz 4096
This option allows to overcome the severe precision
problems which occur in the error calculation when the
standard deviation is much smaller than the mean. In such
a case, the use of the standard formula:
< ( y -
involves the calculation of a small difference between
two large numbers. The problem is avoided by accumulating
the sum of the squares of the deviations of y with respect
to the mean, instead of the sum of the squares of y. The
prior knowledge of the mean is avoided by the use of an
iterative formula making use of the running average.
I use integer profile histograms (chopt='I') for plotting efficiencies.
But I found that the errors were really big, so I checked in the 97a
source code (the CERNLIB version I am using) how the errors are
calculated.
In the routine hcx.F the errors and values are calculated. But there are
inconsistencies between manual (4.23 and 4.24 version) and code (also for
the 98 version):
This last error caused my big errors for the integer histograms.
v/cr p3(3) r 0 1 0 v/cr a(10) r 1 3 2 5 4 8 6 10 7 9 1d 1 '' 10 0 10 put/con 1 a h/fit 1 p2.f q 3 p3 add 1 1 2 h/pl 2with p2.f:
REAL FUNCTION P2(X)
REAL X, PAR(3)
COMMON /PAWPAR/PAR
P2 = PAR(1) + PAR(2)*X + PAR(3)*X*X
END
The following test program shows the problem:
Program PR8
*
Parameter (Nhmax = 100000)
Common /Pawc/ Hmemor(Nhmax)
REAL*8 R8
Common /P/ R8,R4
*
Call Hlimit(Nhmax)
*
Call Hbnt(100,'R8 Test',' ')
Call Hbname(100,'P',R8,'R8:R*8,R4')
*
Do N=1,9
R8 = N*111111.
R4 = N*111.
Print*,' R8 = ',R8 ,' R4 = ',R4
Call Hfnt(100)
EndDo
*
Call Hrput(0,'r8.hbook','N')
Close(10)
*
End
This program generate the file
r8.hbook which you can look at with the
following PAW macro:
hi/file 0 r8.hbook
nt/scan 100
If the file r8.hbook is
generated on on a HPUX, IBMRT or SUN and
if you look at it on DEC OSF or LINUX The macro gives:
+-------+-----------------------+--------------+
| Event | R8 | R4 |
+-------+-----------------------+--------------+
| 1 | 5.3863020109007d-315 | 111. |
| 2 | 5.3914826646872d-315 | 222. |
| 3 | 5.3944674733548d-315 | 333. |
| 4 | 5.3966633184738d-315 | 444. |
| 5 | 5.3985502045818d-315 | 555. |
| 6 | 5.3996481271413d-315 | 666. |
| 7 | 5.4007460497008d-315 | 777. |
| 8 | 5.4018439722603d-315 | 888. |
| 9 | 5.4029418948198d-315 | 999. |
+-------+-----------------------+--------------+
Which is obviously wrong. If you do the contrary: generate the file on
DEC OSF or LINUX and look at it on HPUX, IBMRT or SUN you get
also something wrong. All the other combinaisons give a correct result.
It is a "word swapping" problem. In HBOOK code REAL*8 variables are stored in two REAL*4 without taking care of possible swapping.
This problem is now fixed with the following limitations:
Operators .EQV. and .NEQV. have been added.
size 26 20 set hcol 1002 set htyp 4012 for/file 66 test.ps meta 66 -112 h/pl 110(1:40) close 66
null 0 10 0 10
ellipse 5 5 4 2 90 270
Some improvements have also be done in the ellipse drawing:
null 0 10 0 10 ; ellipse 5 5 2 4 1 360 30
set bord 1
null 0 10 0 10 ; ellipse 5 5 2 4 1 360 30
set fais 1
set faci 2
set tsize null 0 20 0 20 atit xtitle ytitle set tsiz 0.2 atit xtitle ytitle set tsiz 0.5 atit xtitle ytitle
a = $sigma(1.) b = $sigma(1.) c = $sigma(1.)
![]() | Release Notes | Known bugs | FAQs | Contributions | Tutorial | Reference manual | Down load | Miscellaneous |