1 |
|
Last update: V. Formato |
2 |
|
|
3 |
@ PREAMBLE |
@ PREAMBLE |
4 |
This text will help you in installation of PamVMC simulator. This document will be |
This text will help you in installation of PamVMC simulator. This document will be |
5 |
updated after next release of tools. |
updated after next release of tools. |
6 |
Installation was done on Debian machine, kernel 2.6.26-2-686, |
Installation was done on a SL5 machine, kernel 2.6.18-348.18.1.el5, |
7 |
gcc version 3.4.6 (Debian 3.4.6-5) |
gcc version 4.7.0 |
8 |
Everything was compiled under ROOT v. 5.23. PAMELA software (8th reduction) was corrected |
Everything was compiled under ROOT v. 5.34. PAMELA software (9th reduction) was corrected |
9 |
to be compiled (see list of changes below). PAMELA libraries was compiled, but executables, |
to be compiled (see list of changes below). PAMELA libraries were compiled, but executables, |
10 |
like chewbacca still doesn't work (need to be corrected). Anyway, PamVMC needs only libraries |
like chewbacca still doesn't work (need to be corrected). Anyway, PamVMC needs only the libraries |
11 |
for getting information about real magnetic field. To proceess data, I prefer now to have |
to get information about the magnetic field. To proceess data, you should have |
12 |
also standard (second) PAMELA SW installaton under previous version of ROOT (5.20). @ |
a standard PAMELA SW installaton under previous version of ROOT (5.26). @ |
13 |
|
|
14 |
This is a list of tools to do simulation: |
This is a list of tools for the installation: |
15 |
CLHEP 2.0.4.2 |
GEANT 4.9.6.p01 |
16 |
GEANT 4.9.2.p01 |
ROOT v. 5.34 |
17 |
ROOT v. 5.23.04 |
VGM v.3.06 |
18 |
VGM v.3.02 |
xerces-c-3.1.1 |
19 |
PAMELA 8th reduction (should be corrected by yourself if any problems) |
PAMELA 9th reduction software (should be corrected by yourself if any problems) |
20 |
|
|
21 |
In /scripts directory you will find examples of scripts that does an export of |
In /scripts directory you will find examples of scripts that does an export of |
22 |
ALL enviroment variables for this installation. Please check them with yours. |
ALL enviroment variables for this installation. Please check them with yours. |
23 |
|
|
24 |
1) @installed packages mesa-libGLU mesa-libGLU-devel gcc-g77 libXi libXi-devel@ |
1) @install GEANT 4.9.6.p01@ (also includes CHLEP) |
25 |
2) @set gcc and g++ and f77 @ |
mkdir cern |
|
3) @install CLHEP 2.0.4.2@ |
|
|
mkdir /cern |
|
26 |
cd /cern |
cd /cern |
27 |
wget <source> |
tar -xvf geant4.9.6.p01.tar.gz |
28 |
tar zxf clhep-2.0.4.2.tgz |
mkdir geant4.9.6.p01-build |
29 |
ln -s /cern/2.0.4.2 CLHEP |
mkdir geant4.9.6.p01-install |
30 |
cd CLHEP |
ln -s geant4.9.6.p01-install G4 |
31 |
./configure --prefix=/cern/CLHEP |
cd geant4.9.6.p01-build |
32 |
make |
export CFLAGS=-m32 |
33 |
make test |
export CXXFLAGS=-m32 |
34 |
|
cmake -DCMAKE_INSTALL_PREFIX=$PWD/../geant4.9.6.p01-install/ -DGEANT4_INSTALL_DATA=ON ../geant4.9.6.p01 |
35 |
|
ccmake ../geant4.9.6.p01 |
36 |
|
@@@ Enable the following flags: |
37 |
|
- GEANT4_USE_G3TOG4 |
38 |
|
- GEANT4_USE_GDML |
39 |
|
- GEANT4_USE_OPENGL_X11 |
40 |
|
- GEANT4_USE_SYSTEM_EXPAT |
41 |
|
make -j4 |
42 |
make install |
make install |
43 |
4) @install GEANT 4.9.2.p01@ |
cd geant4.9.6.p01-install |
44 |
cd /cern |
ln -s bin/geant4.sh env.sh |
45 |
mkdir G4 |
cd .. |
46 |
cd G4 |
1a)@source the geant4 environmental variables! |
47 |
mkdir data |
source G4/env.sh |
48 |
@copy all cross-section data files in /cern/G4/data and untar them@ |
|
49 |
cd /cern |
2) @ installation of ROOT v. 5.34 @ |
50 |
@copy geant4 sorce tar file in /cern and untar@ |
@ put root_v5.34.04.source.tar.gz in /cern @ |
|
cd /cern/geant4.9.2.p01 |
|
|
./Configure -build |
|
|
@ Would you like to see the instructions? [n] @ |
|
|
@ [Press [Enter] for default settings] @ |
|
|
@ Do you expect to run these scripts and binaries on multiple machines? [n] @ |
|
|
@ Where is Geant4 source installed? [/cern/geant4.9.2.p01] @ |
|
|
@ Specify the path where Geant4 libraries and source files should be installed. [/cern/G4] @ |
|
|
@ Do you want to copy all Geant4 headers in one directory? [y] @ |
|
|
@ Specify the path where are the Geant4 data libraries |
|
|
PhotonEvaporation2.0 RadioactiveDecay3.2 G4EMLOW6.2 G4NDL3.13 G4ABLA3.0 |
|
|
are installed. For now, a flat directory structure is assumed, and this can |
|
|
be customized at the next step if needed. [/cern/G4/data] @ |
|
|
@ Please, specify where CLHEP is installed. [/cern/CLHEP] @ |
|
|
@ You can customize paths and library name of you CLHEP installation: |
|
|
1) CLHEP_INCLUDE_DIR: /cern/CLHEP/include |
|
|
2) CLHEP_LIB_DIR: /cern/CLHEP/lib |
|
|
3) CLHEP_LIB: CLHEP |
|
|
To modify default settings, select number above (e.g. 2) |
|
|
[Press [Enter] for default settings] @ |
|
|
@ By default 'static' (.a) libraries are built. |
|
|
Do you want to build 'shared' (.so) libraries? [y] @ |
|
|
@ You selected to build 'shared' (.so) libraries. |
|
|
Do you want to build 'static' (.a) libraries too? [n] @ |
|
|
@ Do you want to build 'global' compound libraries? [n] @ |
|
|
@ Do you want to compile libraries in DEBUG mode (-g)? [n] @ |
|
|
@ G4UI_NONE |
|
|
If this variable is set, no UI sessions nor any UI libraries are built. |
|
|
This can be useful when running a pure batch job or in a user framework |
|
|
having its own UI system. |
|
|
Do you want to set this variable ? [n] @ |
|
|
@ G4UI_BUILD_XAW_SESSION |
|
|
G4UI_USE_XAW |
|
|
Specifies to include and use the XAW interfaces in the |
|
|
application to be built. |
|
|
The XAW (X11 Athena Widget set) extensions are required to activate |
|
|
and build this driver. [n] @ |
|
|
@ G4UI_BUILD_XM_SESSION |
|
|
G4UI_USE_XM |
|
|
Specifies to include and use the XM Motif based user interfaces. |
|
|
The XM Motif extensions are required to activate and build this |
|
|
driver. [n] @ |
|
|
@ G4UI_BUILD_QT_SESSION |
|
|
G4UI_USE_QT |
|
|
Setting these variables will enable the building of the G4 Qt based |
|
|
user interface module and the use of this module in your applications |
|
|
respectively. |
|
|
The Qt3 or Qt4 headers, libraries and moc application are required to enable |
|
|
the building of this module. |
|
|
Do you want to enable build and use of this module? [n] @ |
|
|
@ G4VIS_NONE |
|
|
If this variable is set, no visualization drivers will be built or used. |
|
|
Do you want to set this variable ? [n] @ |
|
|
@ G4VIS_BUILD_OPENGLX_DRIVER |
|
|
G4VIS_USE_OPENGLX |
|
|
It is an interface to the de facto standard 3D graphics library, |
|
|
OpenGL. It is well suited for real-time fast visualization |
|
|
and prototyping. The X11 version of the OpenGL libraries is required. [y] @ |
|
|
@ G4VIS_BUILD_OPENGLXM_DRIVER |
|
|
G4VIS_USE_OPENGLXM |
|
|
It is an interface to the de facto standard 3D graphics library, |
|
|
OpenGL. It is well suited for real-time fast visualization |
|
|
and prototyping. The X11 version of the OpenGL libraries and |
|
|
the Motif Xm extension is required. [n] @ |
|
|
@ G4VIS_BUILD_DAWN_DRIVER |
|
|
G4VIS_USE_DAWN |
|
|
DAWN drivers are interfaces to the Fukui Renderer DAWN. DAWN is |
|
|
a vectorized 3D PostScript processor suited to prepare technical |
|
|
high quality outputs for presentation and/or documentation. [n] @ |
|
|
@ G4VIS_BUILD_OIX_DRIVER |
|
|
G4VIS_USE_OIX |
|
|
The OpenInventor driver is based on OpenInventor technology |
|
|
for scientific visualization. |
|
|
The X11 version of OpenInventor is required. [n] @ |
|
|
@ G4VIS_BUILD_RAYTRACERX_DRIVER |
|
|
G4VIS_USE_RAYTRACERX |
|
|
Allows for interactive ray-tracing graphics through X11. |
|
|
The X11 package is required. [n] @ |
|
|
@ G4VIS_BUILD_VRML_DRIVER |
|
|
G4VIS_USE_VRML |
|
|
These driver generate VRML files, which describe 3D scenes to be |
|
|
visualized with a proper VRML viewer. [n] @ |
|
|
@ OGLHOME/include |
|
|
OGLHOME/lib |
|
|
You have selected to use OpenGL driver. |
|
|
Specify the correct path (OGLHOME) where OpenGL is installed in your system. |
|
|
It was found in /usr. Press [Enter] to set this path or type the correct one. |
|
|
You can set '-' (without quotation) to CANCEL the OpenGL flag at all: [/usr] |
|
|
"here you need to specify path to your OpenGL headers and libraries. |
|
|
Please note, that you have to install development version of OpenGL to have headers" @ |
|
|
@ G4UI_BUILD_OPENGLQT_DRIVER |
|
|
G4UI_USE_OPENGLQT |
|
|
Setting these variables will enable the building of the G4 OpenGL Qt based |
|
|
visualisation driver and the use of this driver in your applications |
|
|
respectively. |
|
|
The Qt3 or Qt4 headers, libraries and moc application are required to enable |
|
|
the building of this module. |
|
|
Do you want to enable build and use of this module? [n] @ |
|
|
@ G4LIB_BUILD_GDML |
|
|
Setting this variable will enable building of the GDML plugin module embedded |
|
|
in Geant4 for detector description persistency. |
|
|
It requires your system to have the XercesC library and headers installed. |
|
|
Do you want to set this variable? [n] @ |
|
|
@ G4LIB_BUILD_G3TOG4 |
|
|
The utility module 'g3tog4' will be built by setting this |
|
|
variable. NOTE: it requires a valid FORTRAN compiler to be |
|
|
installed on your system and the 'cernlib' command in the |
|
|
path, in order to build the ancillary tools! |
|
|
Do you want to build 'g3tog4' ? [y] @ |
|
|
@ G4LIB_BUILD_ZLIB |
|
|
Do you want to activate compression for output files |
|
|
generated by the HepRep visualization driver? [y] @ |
|
|
@ G4ANALYSIS_USE |
|
|
Activates the configuration setup for allowing plugins to |
|
|
analysis tools based on AIDA (Astract Interfaces for Data |
|
|
Analysis). In order to use AIDA features and compliant analysis |
|
|
tools, the proper environment for these tools will have to be |
|
|
set (see documentation for the specific analysis tools). [n] @ |
|
|
@ end of configuration phase. |
|
|
Creating configuration setup file... |
|
|
WARNING: the generated configuration file |
|
|
can be edited if necessary! |
|
|
You can introduce any change to the configuration file |
|
|
/cern/geant4.9.2.p01/.config/bin/Linux-g++/config.sh before the final installation. |
|
|
To do so, use a shell escape now (e.g. !vi /cern/geant4.9.2.p01/.config/bin/Linux-g++/config.sh). |
|
|
Press [Enter] to start installation or use a shell escape to edit config.sh: @ |
|
|
|
|
|
@ Finally,@ |
|
|
./Configure - install |
|
|
@script to setup enviroment: /cern//geant4.9.2.p01/.config/bin/Linux-g++/env.sh @ |
|
|
|
|
|
6) @ install PYTHIA6 @ |
|
|
@ get archive ftp://root.cern.ch/root/pythia6.tar.gz and put it in /cern @ |
|
|
tar zxf pythia6.tar.gz |
|
|
cd pythia6 |
|
|
makePythia6.linux |
|
|
5) @ installation of ROOT v. 5.23.04 @ |
|
|
@ put root_v5.23.04.source.tar.gz in /cern @ |
|
51 |
cd /cern |
cd /cern |
52 |
tar zxf root_v5.23.04.source.tar.gz |
tar -zxvf root_v5.34.04.source.tar.gz |
53 |
mv root root_v5.23.04 |
mv root root_v5.34 |
54 |
ln -s root_v5.23.04 ROOT |
ln -s root_v5.34 root |
55 |
cd ROOT/lib |
source G4/env.sh |
56 |
ln -s /cern/pythia6/libPythia6.so libPythia6.so |
export ROOTSYS=$PWD/root |
57 |
cd /cern/ROOT |
./configure linux --all --enable-builtin-pcre --disable-castor |
|
source /cern//geant4.9.2.p01/.config/bin/Linux-g++/env.sh |
|
|
export ROOTSYS=/cern/ROOT |
|
|
./configure linux --disable-afs --enable-cern --enable-mysql --disable-cintex |
|
|
--disable-globus --enable-roofit --enable-g4root |
|
|
--with-g4-incdir=$G4INCLUDE --with-g4-libdir=$G4LIB/Linux-g++ |
|
|
--with-clhep-incdir=$CLHEP_BASE_DIR/include |
|
|
--with-f77=g77 --enable-pythia6 --with-pythia6-libdir=/cern/pythia6 |
|
58 |
make |
make |
59 |
|
|
60 |
6) @installation of VGM v.3.02@ |
3) @installation of xerces v.3.1.1@ |
61 |
|
tar -xvf xerces-c-3.1.1.tar.gz |
62 |
|
./configure --build=i686 --prefix $PWD |
63 |
|
make |
64 |
|
make install |
65 |
|
|
66 |
|
4) @installation of VGM v.3.06@ |
67 |
@Note: VGM is needed to convert ROOT-defined geomery in GEANT4. So, you need |
@Note: VGM is needed to convert ROOT-defined geomery in GEANT4. So, you need |
68 |
install VGM only if you plan to use in RunConfiguration of your application |
install VGM only if you plan to use in RunConfiguration of your application |
69 |
an option "geomRootToGeant4" - geometry defined in Root, but GEANT4 navigation. |
an option "geomRootToGeant4" - geometry defined in Root, but GEANT4 navigation. |
74 |
|
|
75 |
@ get archive from http://ivana.home.cern.ch/ivana/VGM.html and put in in /cern @ |
@ get archive from http://ivana.home.cern.ch/ivana/VGM.html and put in in /cern @ |
76 |
cd /cern |
cd /cern |
77 |
tar zxf v3-02.tar.gz |
tar zxf v3-06.tar.gz |
78 |
ln -s /cern/v3-02 /cern/VGM |
mkdir vgm.3.06-build |
79 |
|
mkdir vgm.3.06-install |
80 |
|
ln -s vgm.3.06-install VGM |
81 |
emacs -nw VGM/config/geant4.gmk |
emacs -nw VGM/config/geant4.gmk |
82 |
@ correct line 23: CPPFLAGS += -I$(G4INCLUDE) on some machines @ |
@ correct line 23: CPPFLAGS += -I$(G4INCLUDE) on some machines @ |
83 |
cd /VGM/packages |
cd VGM |
84 |
|
./autoconf/configure --with-clhep-include=$PWD/../geant4.9.6.p01-install/include/Geant4/ --with-clhep-libdir=$PWD/../geant4.9.6.p01-install/lib/ --with-geant4=/$PWD/../geant4.9.6.p01-install/ --with-xerces=$PWD/../xerces-c-3.1.1/ --with-root=$PWD/../root/ |
85 |
make |
make |
|
@ after you should fin in /cern/VGM/lib/Linux-g++ libaries: |
|
|
libBaseVGM.so libClhepVGM.so libGeant4GM.so libRootGM.so libXmlVGM.so @ |
|
86 |
|
|
87 |
7) Installation of PAMELA software |
5) Installation of PAMELA software |
88 |
|
|
89 |
@ create a symbolic link to cint includes: (needed for Darth Vader with ROOT 5.23) |
@ Follow the standard instructions for the installation of PAMELA software and source the enviroment @ |
|
for ROOT 5.20 you don't need to do it@ |
|
|
cd /cern/ROOT/include |
|
|
ln -s ../cint/cint/inc/ cint |
|
90 |
|
|
91 |
|
|
92 |
8) Installation of geant4_vmc |
6) Installation of geant4_vmc |
93 |
|
|
94 |
@ get source ftp://root.cern.ch/root/vmc/geant4_vmc.2.6.tar.gz and put in /cern @ |
@get source ftp://root.cern.ch/root/vmc/geant4_vmc.2.14a.tar.gz and put in /cern @ |
95 |
cd /cern |
cd /cern |
96 |
tar zxf geant4_vmc.2.6.tar.gz |
tar -zxvf geant4_vmc.2.14a.tar.gz |
97 |
ln -s /cern/geant4_vmc_2.6 /cern/geant4_vmc |
cd geant4_vmc |
98 |
cd /geant4_vmc/source |
@edit `root-config --etcdir`/vmc/Makefile.linux and add the -m32 flag to the OPT variable and empty the variable SHLIB@ |
99 |
make |
make |
100 |
|
|
101 |
9) Installation of PamVMC |
7) Installation of PamVMC |
102 |
|
|
103 |
@Before you start, do an export of PAM_VMC env. variable to source directory |
@Before you start, do an export of PAM_VMC env. variable to the source directory |
104 |
In case if you wish to use PamVMC with GEANT4 you should go to $(PAM_VMC)/PamG4RunConfiguration @ |
In case if you wish to use PamVMC with GEANT4 you should go to $(PAM_VMC)/PamG4RunConfiguration @ |
105 |
make clean |
make clean |
106 |
make |
make |
109 |
make |
make |
110 |
@ after this step an application library $(PAM_VMC)/lib/tgt_$(PLATFORM)/libPamVMC_fc.so will be compiled |
@ after this step an application library $(PAM_VMC)/lib/tgt_$(PLATFORM)/libPamVMC_fc.so will be compiled |
111 |
and some calibration files will be copied from $(PAM_VMC)/aux@ |
and some calibration files will be copied from $(PAM_VMC)/aux@ |
112 |
|
@ do an export |
113 |
|
export LD_LIBRARY_PATH=$(PAM_VMC)/lib/tgt_$(PLATFORM):$(LD_LIBRARY_PATH) |
114 |
|
|
115 |
@ in $(PAM_VMC)/examples you can find an example of usage @ |
@ in $(PAM_VMC)/examples you can find an example of usage @ |
116 |
@ For more details please look inside $(PAM_VMC)/include PamVMCPrimaryGenerator.h and PamVMCDetectorHit.h @ |
@ For more details please look inside $(PAM_VMC)/include PamVMCPrimaryGenerator.h and PamVMCDetectorHit.h @ |
117 |
|
|
118 |
|
|
119 |
|
@From here on old instructions: |
120 |
|
|
121 |
|
/////////////EXTERNAL DIGITIZER///////////////// |
122 |
|
In aux/PamVMVDigitizer you can find a source code of stand-alone digitizer. Just do make. |
123 |
|
There are only 3 parameters: input root-file name, output raw-filename and integer random seed. |
124 |
|
If you specify 0, then TRandom3(0) object will be created. All digitizers use this object. |
125 |
|
Please note, that current version of digidaizer could be not compatible with root-files generated |
126 |
|
with previous versions of PamVMC due to addtitonal variables in PamVMCDetectorHit class |
127 |
|
|
128 |
|
|
129 |
/////////////SPGECTRA GENERATOR///////////////// |
/////////////SPGECTRA GENERATOR///////////////// |
130 |
@ spectra_generator is a tool which allow you to generate tracks above the apparatus |
@ spectra_generator is a tool which allow you to generate tracks above the apparatus |
131 |
isotropically and save initial kinematic parameters (X0,Y0,Z0=110., P, Theta, Phi) |
isotropically and save initial kinematic parameters (X0,Y0,Z0=110., P, Theta, Phi) |