2 # ----------------------------------------------------------------
3 # This script sets the default environment variables for
4 # Alice Geant4 based prototype
5 # Options: -g verbose mode
6 # local recomended local configuration
8 # csh version by I.Gonzalez 18.2.2000
13 # ==================================================================
14 # Alice configuration options: Please define your selection with the
16 # ==================================================================
22 # If set: the provided Geant4 version and not the default one is set
23 #setenv AG4_VERSION 1.1
26 # ====== AG4_VISUALIZE
27 # Set/Unset to get/avoid Geant4 visualisation.
28 setenv AG4_VISUALIZE 1
29 #unsetenv AG4_VISUALIZE
33 # Set/Unset to get OPACS as a Geant4 visualisation driver.
39 # If set: the secondary particles are not tracked immediatelly
40 # when they are created but after the urgent stack is exhausted
41 # If not set: the G4 default stacking is used
43 #unsetenv AG4_STACKING
46 # ====== AG4_NOPHYSICS
47 # If set: only geantino or charged geantino can be shooted
48 #setenv AG4_NOPHYSICS 1
49 unsetenv AG4_NOPHYSICS
52 # ====== AG4_MAKESHLIB
53 # If set: shared libraris are created
54 setenv AG4_MAKESHLIB 1
55 #unsetenv AG4_MAKESHLIB
59 # If set: the environment for using Objectivity is set. Not available on Linux?
65 # Resolve input parameters
72 set VERBOSE="YES"; shift; breaksw;
74 set LOCAL="YES"; shift; breaksw;
79 # ==================================================================
81 # ==================================================================
84 if ( "$LOCAL" == "NO" ) then
90 # ALICE base directory
91 set ALICE_BASE = /afs/cern.ch/alice/offline
94 # Geant4 base directory
95 set G4_BASE = ${ALICE_BASE}/geant4
98 # LHC++ base directory
99 set LHCXX_BASE = /afs/cern.ch/sw/lhcxx/specific/@sys
102 # Root base directory
103 set ROOT_BASE = /afs/cern.ch/alice/library/root
104 # to be removed after aCC support will be defined
105 # in the offline in a standard way
106 if ( "`uname`" == "HP-UX" ) then
107 set ROOT_BASE = /afs/cern.ch/alice/library/.hp_ux102/root.2.23.aCC
111 # IRST code check tool base directory
112 setenv IRST_BASE /afs/cern.ch/alice/offline/geant4/tools/IRST
115 # Objectivity base directory
116 set OBJY_BASE = /afs/cern.ch/rd45/objectivity
120 # recommended local installation
124 # ALICE base directory
125 set ALICE_BASE = $HOME/dev
128 # Geant4 base directory
129 set G4_BASE = $HOME/dev
132 # LHC++ base directory
133 set LHCXX_BASE = $HOME/dev
136 # Root base directory
137 set ROOT_BASE = $HOME/dev/root
140 # IRST code check tool base directory
141 setenv IRST_BASE $HOME/dev/tools/IRST
146 #....................................... SKIP ................................
148 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
149 # You should not need to change
150 # the lines below this one
151 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
154 # Alice Geant4 install directory
156 setenv AG4_INSTALL $ALICE_ROOT/AliGeant4
158 # Set variables depending on other variables
159 # if opacs is selected then select also visualize
160 if ( "$?AG4_OPACS" == 1 ) then
161 setenv AG4_VISUALIZE 1
165 if ( "$VERBOSE" == "YES" ) then
167 echo " =========================================="
168 echo " ALICE Geant4 environment configuration"
169 echo " =========================================="
172 # Some output on the selections...
175 if ("$?AG4_VISUALIZE" == 1) then
176 echo "Geant4 visualisation is selected."
178 echo "Geant4 visualisation is NOT selected."
180 if ("$?AG4_OPACS" == 1) then
181 echo "OPACS driver is selected."
183 echo "OPACS driver is NOT selected."
185 if ("$?AG4_TOY" == 1) then
186 echo "Toy geometry is selected"
188 echo "Full geometry is selected"
190 if ("$?AG4_STACKING" == 1) then
191 echo "Secondaries will be tracked after the urgent stack is exhausted."
193 echo "The Geant4 default stackin will be used."
195 if ("$?AG4_NOPHYSICS" == 1) then
196 echo "Only geantino or charged geantino can be shooted."
198 echo "Full physics has been selected."
200 if ("$?AG4_ODBMS" == 1) then
201 echo "The environment for using Objectivity will be set."
203 echo "No Geant4 Persistency."
209 # ROOT Alice definitions & options
210 # ==================================
212 if ( "$?ROOTSYS" == 0 ) then
213 setenv ROOTSYS ${ROOT_BASE}
215 if ( "$VERBOSE" == "YES" ) then
219 echo ROOTSYS set to $ROOTSYS
223 # ODBMS Alice definitions & options
224 # ==================================
226 if ( "$VERBOSE" == "YES" ) then
228 echo "ODBMS & Objectivity"
229 echo "==================="
231 if ( "$?AG4_ODBMS" == 1 ) then
232 if ( "$VERBOSE" == "YES" ) then
233 echo Setting ODBMS Alice definitions & options...
236 unsetenv AG4_VISUALIZE
237 setenv ALBOOT_DIR $AG4_INSTALL/ObjyDatabase
238 setenv ALBOOT_NAME Alice
239 setenv ALBOOT $ALBOOT_DIR/$ALBOOT_NAME
240 if ( ! -d $ALBOOT_DIR ) then
241 echo " Making new directory $ALBOOT_DIR ..."
245 if ( "$VERBOSE" == "YES" ) then
246 echo Unsetting ODBMS Alice definitions \& options...
254 # Objectivity G4 options
255 # according to run/example5/g4odbms_setup.sh
257 if ( "$?G4ODBMS" == 1 ) then
258 setenv OBJY_VERS 4.0.2
259 if ( -r $OBJY_BASE/objyenv.csh ) then
260 source $OBJY_BASE/objyenv.csh
261 if ( "$VERBOSE" == "YES" ) then
262 echo " Environment for Objectivity has been set."
265 setenv HEP_ODBMS_DIR ${LHCXX_BASE}/HepODBMS/0.0
266 setenv HEP_ODBMS_INCLUDES $HEP_ODBMS_DIR/include
272 # ==================================
274 if ( "$VERBOSE" == "YES" ) then
276 echo "Geant4 env. variables..."
277 echo "============================"
279 if ("$?AG4_VERSION" == 0) then
280 setenv G4INSTALL ${G4_BASE}/geant4
282 setenv G4INSTALL ${G4_BASE}/g4dev/geant4.${AG4_VERSION}
285 if ("$?AG4_MAKESHLIB" == 0) then
288 setenv G4MAKESHLIB ${G4INSTALL}/config/makeshlib.sh
291 # path to data files needed by hadronic processes
292 setenv G4LEVELGAMMADATA ${G4INSTALL}/data/PhotonEvaporation
294 # This is architecture dependent...
296 if ( $SYSTEM == "HP-UX" ) then
297 setenv G4SYSTEM "HP-aCC"
298 #setenv G4USE_OSPACE 1 # compiling with Object Space STL
299 setenv G4NO_STD_NAMESPACE 1 # required when compiling with native STL
300 # (check if needed for geant4.2.0)
302 if ( $SYSTEM == "Linux" ) then
303 setenv G4SYSTEM "Linux-g++"
305 if ( "$VERBOSE" == "YES" ) then
306 echo "Architecture is $SYSTEM"
307 echo "Geant4 is istalled in $G4INSTALL"
308 echo "Geant4 architecture type is $G4SYSTEM"
309 if ( "$?G4USE_OSPACE" == 1 ) then
310 echo "ObjectSpace will be used for STL"
317 # ==================================
320 if ( -d $LHCXX_BASE/CLHEP/new ) then
321 setenv CLHEP_BASE_DIR $LHCXX_BASE/CLHEP/new
323 echo "WARNING: CLHEP has not been found in the default path."
324 if ( "$VERBOSE" == "YES" ) then
325 echo " Please set the variable CLHEP_BASE_DIR to its base path"
326 echo " Example: setenv CLHEP_BASE_DIR /afs/cern.ch/sw/lhcxx/specific/@sys/CLHEP/pro"
329 if ( "$VERBOSE" == "YES" ) then
330 echo "CLHEP base directory: $CLHEP_BASE_DIR"
336 # ==================================
339 if ( "$?AG4_VISUALIZE" == 1 ) then
340 if ( "$VERBOSE" == "YES" ) then
341 echo "G4 Visualization env. variables..."
347 if ( "$VERBOSE" == "YES" ) then
348 echo "* X11 with Motif..."
350 setenv G4UI_BUILD_XM_DRIVER 1
351 setenv G4UI_BUILD_XM_SESSION 1
357 if ( "$VERBOSE" == "YES" ) then
358 echo "* Fukui Renderer (DAWN)..."
360 setenv G4VIS_BUILD_DAWN_DRIVER 1
361 setenv G4VIS_BUILD_DAWNFILE_DRIVER 1
362 setenv G4VIS_USE_DAWN 1
363 setenv G4VIS_USE_DAWNFILE 1
364 setenv G4DAWNFILE_VIEWER david
365 setenv DAWN_HOME ${G4_BASE}/tools/bin
366 if ( "`echo ${PATH} | grep ${DAWN_HOME} `" == "" ) then
367 setenv PATH "${PATH}:${DAWN_HOME}"
370 setenv G4DAWN_MULTI_WINDOW 1
371 if ( $SYSTEM == "Linux" ) then
372 setenv G4DAWN_NAMED_PIPE 1
375 if ( "$VERBOSE" == "YES" ) then
376 if ("$?G4VIS_USE_DAWN" == 1) then
377 echo " Dawn driver activated"
379 if ("$?G4VIS_USE_DAWNFILE" == 1) then
380 echo " Dawn file driver activated"
382 if ("$?G4DAWNFILE_VIEWER" == 1) then
383 echo " Dawn file viewer set to ${G4DAWNFILE_VIEWER}"
385 if ("$?DAWN_HOME" == 1) then
386 echo " Dawn home path set to ${DAWN_HOME}"
388 if ("$?G4DAWN_MULTI_WINDOW" == 1) then
389 echo " Dawn multi window selected"
391 if ("$?G4DAWN_NAMED_PIPE" == 1) then
392 echo " Dawn named pipe selected"
397 # Set colors for overlappings
398 setenv DAVID_RAINBOW_FLAG 1
399 #setenv DAVID_HIGHLIGHT_COLOR_R r
400 #setenv DAVID_HIGHLIGHT_COLOR_G g
401 #setenv DAVID_HIGHLIGHT_COLOR_B b
403 # If set volumes names are shown
404 setenv DAVID_DISPLAY_PVNAME 1
405 # If set supresses the call to dawn
406 #setenv DAVID_NO_VIEW 1
407 setenv DAVID_EPSILON_3D 0.001
409 if ( "$VERBOSE" == "YES" ) then
410 if ("$?DAVID_RAINBOW_FLAG" == 1) then
411 echo " DAVID Rainbow mode is ON"
413 if ("$?DAVID_HIGHLIGHT_COLOR_R" == 1) then
414 echo " DAVID Highlight color (Red) set to ${DAVID_HIGHLIGHT_COLOR_R}"
416 if ("$?DAVID_HIGHLIGHT_COLOR_G" == 1) then
417 echo " DAVID Highlight color (Green) set to ${DAVID_HIGHLIGHT_COLOR_G}"
419 if ("$?DAVID_HIGHLIGHT_COLOR_B" == 1) then
420 echo " DAVID Highlight color (Blue) set to ${DAVID_HIGHLIGHT_COLOR_B}"
422 if ("$?DAVID_DISPLAY_PVNAME" == 1) then
423 echo " DAVID will display intersected volumes name"
425 if ("$?DAVID_DISPLAY_PVNAME" == 1) then
426 echo " Dawn will not be called from DAVID"
428 if ("$?DAVID_EPSILON_3D" == 1) then
429 echo " DAVID tolerance set to ${DAVID_EPSILON_3D}"
436 if ( "$VERBOSE" == "YES" ) then
439 setenv G4VIS_BUILD_OPENGLX_DRIVER 1
440 setenv G4VIS_BUILD_OPENGLXM_DRIVER 1
441 setenv G4VIS_USE_OPENGLX 1
442 setenv G4VIS_USE_OPENGLXM 1
443 setenv OGLHOME /usr/local
444 setenv OGLLIBS "-L$OGLHOME/lib -lMesaGLU -lMesaGL"
446 if ( "$VERBOSE" == "YES" ) then
447 if ("$?G4VIS_USE_OPENGLX" == 1) then
448 echo " OpenGL and X11 driver activated"
450 if ("$?G4VIS_USE_OPENGLXM" == 1) then
451 echo " OpenGL with Motif extension driver activated"
453 if ("$?OGLHOME" == 1) then
454 echo " OpenGL path set to ${OGLHOME}"
456 if ("$?OGLLIBS" == 1) then
457 echo " OpenGL libraries set to ${OGLLIBS}"
464 if ( "$VERBOSE" == "YES" ) then
465 echo "* OpenInventor..."
467 #setenv G4VIS_USE_OPENINVENTOR 1
468 #setenv OIHOME whatever
469 #setenv HEPVISDIR something
470 if ( "$VERBOSE" == "YES" ) then
471 if ("$?G4VIS_USE_OPENINVENTOR" == 1) then
472 echo " OpenInventor driver activated"
473 echo " OpenInventor path is ${OIHOME}"
474 echo " HepVis path is ${HEPVISDIR}"
481 if ( "$VERBOSE" == "YES" ) then
484 setenv G4VIS_BUILD_VRML_DRIVER 1
485 setenv G4VIS_BUILD_VRMLFILE_DRIVER 1
486 setenv G4VIS_USE_VRML 1
487 setenv G4VIS_USE_VRMLFILE 1
488 #Set preferred vrml viewer to be invoked in this mode
489 setenv G4VRMLFILE_VIEWER vrweb
490 #Set host name for VRML1 visualization.... the g4vrmlview machine!
491 setenv G4VRML_HOST_NAME nohost
492 #Command to run java listener for VRML driver
493 #alias javavrml "java -classpath $G4_BASE/tools/bin/java g4vrmlview vrweb"
495 if ( "$VERBOSE" == "YES" ) then
496 if ("$?G4VIS_USE_VRML" == 1) then
497 echo " VRML driver activated"
498 echo " Host Name for remote visualization is ${G4VRML_HOST_NAME}"
500 if ("$?G4VIS_USE_VRMLFILE" == 1) then
501 echo " VRML file driver activated"
502 echo " VRML viewer set to ${G4VRMLFILE_VIEWER}"
509 if ( "$VERBOSE" == "YES" ) then
510 echo "* Ray Tracer..."
512 #setenv G4VIS_BUILD_RAYTRACER_DRIVER 1
513 #setenv G4VIS_USE_RAYTRACER 1
514 if ( "$VERBOSE" == "YES" ) then
515 if ("$?G4VIS_USE_RAYTRACER" == 1) then
516 echo " Ray tracing driver activated"
523 if ( "$VERBOSE" == "YES" ) then
524 echo "* Geant Adaptative GUI (GAG)..."
526 setenv G4UI_BUILD_GAG_SESSION 1
527 setenv G4UI_USE_GAG 1
528 setenv MOMOPATH ${G4_BASE}/tools/GAG/tcltk
529 if ( "`echo ${PATH} | grep ${MOMOPATH} `" == "" ) then
530 setenv PATH "${PATH}:${MOMOPATH}"
533 set NCLASSPATH = ".:${G4_BASE}/tools/swing-1.0.3/swingall.jar:${G4_BASE}/tools/GAG/java/GAG.jar"
534 if ("$?CLASSPATH" == 0) then
535 setenv CLASSPATH $NCLASSPATH
537 if ( "`echo ${CLASSPATH} | grep ${NCLASSPATH} `" == "" ) then
538 setenv CLASSPATH "${CLASSPATH}:${NCLASSPATH}"
542 if ( "$VERBOSE" == "YES" ) then
543 if ("$?G4UI_USE_GAG" == 1) then
544 echo " GAG UI activated"
545 echo " Momo path set to $MOMOPATH"
546 echo " NOTE: Run "\'tmomo\' "to use Momo (TK/Tcl version)"
547 echo " The path to the java GAG code was updated"
548 echo " NOTE: Run "\'java gag\'" to use GAG (java version)"
553 if ( "$VERBOSE" == "YES" ) then
554 echo Unsetting G4 Visualization env. variables...
558 unsetenv G4UI_BUILD_XM_DRIVER
559 unsetenv G4UI_BUILD_XM_SESSION
563 unsetenv G4VIS_BUILD_DAWN_DRIVER
564 unsetenv G4VIS_BUILD_DAWNFILE_DRIVER
565 unsetenv G4VIS_USE_DAWN
566 unsetenv G4VIS_USE_DAWNFILE
567 unsetenv G4DAWNFILE_VIEWER
569 unsetenv G4DAWN_MULTI_WINDOW
570 if ( $SYSTEM == "Linux" ) then
571 unsetenv G4DAWN_NAMED_PIPE
575 unsetenv DAVID_RAINBOW_FLAG
576 unsetenv DAVID_HIGHLIGHT_COLOR_R
577 unsetenv DAVID_HIGHLIGHT_COLOR_G
578 unsetenv DAVID_HIGHLIGHT_COLOR_B
579 unsetenv DAVID_DISPLAY_PVNAME
580 unsetenv DAVID_NO_VIEW
581 unsetenv DAVID_EPSILON_3D
584 unsetenv G4VIS_BUILD_OPENGLX_DRIVER
585 unsetenv G4VIS_BUILD_OPENGLXM_DRIVER
586 unsetenv G4VIS_USE_OPENGLX
587 unsetenv G4VIS_USE_OPENGLXM
592 unsetenv G4VIS_USE_OPENINVENTOR
595 unsetenv G4VIS_BUILD_VRML_DRIVER
596 unsetenv G4VIS_BUILD_VRMLFILE_DRIVER
597 unsetenv G4VIS_USE_VRML
598 unsetenv G4VIS_USE_VRMLFILE
599 unsetenv G4VRMLFILE_VIEWER
600 unsetenv G4VRML_HOST_NAME
603 unsetenv G4UI_BUILD_GAG_SESSION
604 unsetenv G4UI_USE_GAG
612 if ( "$?AG4_OPACS" == 1 ) then
613 if ( "$VERBOSE" == "YES" ) then
616 setenv AG4_VISUALIZE 1
619 # OpenGL: needed by OPACS
621 setenv G4VIS_BUILD_OPENGLX_DRIVER 1
622 setenv G4VIS_USE_OPENGLX 1
623 if ( $SYSTEM == "Linux" ) then
624 setenv OGLHOME /usr/local
625 setenv OGLLIBS "-L$OGLHOME/lib -lMesaGLU -lMesaGL"
627 setenv OGLHOME $LHCXX_BASE/OpenGL/pro
633 setenv G4VIS_BUILD_OPACS_DRIVER 1
634 setenv G4UI_BUILD_WO_DRIVER 1
635 setenv G4UI_BUILD_WO_SESSION 1
636 setenv G4VIS_USE_OPACS 1
638 setenv OPACS_HOME $G4_BASE/tools/OPACS
639 #setenv OPACS_HOME /afs/cern.ch/rd44/dev/OPACS
640 if ( $SYSTEM == "Linux" ) then
641 setenv G4_OPACS_WIDGET_SET lesstif
643 setenv G4_OPACS_WIDGET_SET Xm
645 source $OPACS_HOME/OPACS/v3/setup.csh
646 setenv WOENVIRONMENT $AG4_INSTALL/bin/Alice.odb
647 setenv OPATH "$OPATH $G4INSTALL/environments/OPACS/usr"
648 if ( "$VERBOSE" == "YES" ) then
649 if ("$?G4VIS_USE_OPACS" == 1) then
650 echo " OPACS driver activated"
651 echo " OPACS path set to $OPACS_HOME"
655 if ( "$VERBOSE" == "YES" ) then
656 echo "* Unsetting OPACS driver env. variables ..."
658 unsetenv G4VIS_BUILD_OPACS_DRIVER
659 unsetenv G4UI_BUILD_WO_DRIVER
660 unsetenv G4UI_BUILD_WO_SESSION
661 unsetenv G4VIS_USE_OPACS
664 unsetenv G4_OPACS_WIDGET_SET
666 unsetenv WOENVIRONMENT
671 # path to Alice executable and config scripts
673 if ( "`echo ${PATH} | grep ${AG4_INSTALL}/bin/${G4SYSTEM} `" == "" ) then
674 if ( "$VERBOSE" == "YES" ) then
675 echo Adding $AG4_INSTALL/bin/$G4SYSTEM to the path...
677 setenv PATH "${PATH}:${AG4_INSTALL}/bin/${G4SYSTEM}"
679 if ( "`echo ${PATH} | grep ${AG4_INSTALL}/config `" == "" ) then
680 if ( "$VERBOSE" == "YES" ) then
681 echo Adding ${AG4_INSTALL}/config to the path...
683 setenv PATH "${PATH}:${AG4_INSTALL}/config"
687 # path to shared libraries
689 if ( $SYSTEM == "HP-UX" ) then
690 set SHLIBVAR = $SHLIB_PATH
691 set SHLIBVARNAME = SHLIB_PATH
693 if ( $SYSTEM == "Linux" ) then
694 set SHLIBVAR = $LD_LIBRARY_PATH
695 set SHLIBVARNAME = LD_LIBRARY_PATH
697 if ( "`echo ${SHLIBVAR} | grep ${AG4_INSTALL}/lib/${G4SYSTEM} `" == "" ) then
698 if ( "$VERBOSE" == "YES" ) then
699 echo Adding ${AG4_INSTALL}/lib/${G4SYSTEM} to the shared libraries path...
701 set SHLIBVAR="${AG4_INSTALL}/lib/${G4SYSTEM}:${SHLIBVAR}"
704 if ( "`echo ${SHLIBVAR} | grep ${G4INSTALL}/lib/${G4SYSTEM} `" == "" ) then
705 if ( "$VERBOSE" == "YES" ) then
706 echo Adding ${G4INSTALL}/lib/${G4SYSTEM} to the shared libraries path...
708 set SHLIBVAR="${G4INSTALL}/lib/${G4SYSTEM}:${SHLIBVAR}"
711 setenv $SHLIBVARNAME $SHLIBVAR
715 # Remove unneeded variables. If this is not done the vars. remain in the env.
729 echo "Default ALICE environment for GEANT4 has been set."