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 2.0_test
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
300 if ( $SYSTEM == "Linux" ) then
301 setenv G4SYSTEM "Linux-g++"
303 if ( $SYSTEM == "OSF1" ) then
304 setenv G4SYSTEM "DEC-cxx"
305 #setenv G4NO_STD_NAMESPACE 1 # compiling witn non ISO/ANSI setup
307 if ( $SYSTEM == "SunOS" ) then
308 setenv G4SYSTEM "SUN-CC"
309 setenv G4USE_OSPACE 1 # compiling with Object Space STL
311 if ( "$VERBOSE" == "YES" ) then
312 echo "Architecture is $SYSTEM"
313 echo "Geant4 is istalled in $G4INSTALL"
314 echo "Geant4 architecture type is $G4SYSTEM"
315 if ( "$?G4USE_OSPACE" == 1 ) then
316 echo "ObjectSpace will be used for STL"
323 # ==================================
326 if ( -d $LHCXX_BASE/CLHEP/1.5.0.0 ) then
327 setenv CLHEP_BASE_DIR $LHCXX_BASE/CLHEP/1.6.0.0
329 echo "WARNING: CLHEP has not been found in the default path."
330 if ( "$VERBOSE" == "YES" ) then
331 echo " Please set the variable CLHEP_BASE_DIR to its base path"
332 echo " Example: setenv CLHEP_BASE_DIR /afs/cern.ch/sw/lhcxx/specific/@sys/CLHEP/pro"
335 if ( "$VERBOSE" == "YES" ) then
336 echo "CLHEP base directory: $CLHEP_BASE_DIR"
342 # ==================================
345 if ( "$?AG4_VISUALIZE" == 1 ) then
346 if ( "$VERBOSE" == "YES" ) then
347 echo "G4 Visualization env. variables..."
353 if ( "$VERBOSE" == "YES" ) then
354 echo "* X11 with Motif..."
356 setenv G4UI_BUILD_XM_DRIVER 1
357 setenv G4UI_BUILD_XM_SESSION 1
363 if ( "$VERBOSE" == "YES" ) then
364 echo "* Fukui Renderer (DAWN)..."
366 setenv G4VIS_BUILD_DAWN_DRIVER 1
367 setenv G4VIS_BUILD_DAWNFILE_DRIVER 1
368 setenv G4VIS_USE_DAWN 1
369 setenv G4VIS_USE_DAWNFILE 1
370 setenv G4DAWNFILE_VIEWER david
371 setenv DAWN_HOME ${G4_BASE}/tools/bin
372 if ( "`echo ${PATH} | grep ${DAWN_HOME} `" == "" ) then
373 setenv PATH "${PATH}:${DAWN_HOME}"
376 setenv G4DAWN_MULTI_WINDOW 1
377 if ( $SYSTEM == "Linux" ) then
378 setenv G4DAWN_NAMED_PIPE 1
381 if ( "$VERBOSE" == "YES" ) then
382 if ("$?G4VIS_USE_DAWN" == 1) then
383 echo " Dawn driver activated"
385 if ("$?G4VIS_USE_DAWNFILE" == 1) then
386 echo " Dawn file driver activated"
388 if ("$?G4DAWNFILE_VIEWER" == 1) then
389 echo " Dawn file viewer set to ${G4DAWNFILE_VIEWER}"
391 if ("$?DAWN_HOME" == 1) then
392 echo " Dawn home path set to ${DAWN_HOME}"
394 if ("$?G4DAWN_MULTI_WINDOW" == 1) then
395 echo " Dawn multi window selected"
397 if ("$?G4DAWN_NAMED_PIPE" == 1) then
398 echo " Dawn named pipe selected"
403 # Set colors for overlappings
404 setenv DAVID_RAINBOW_FLAG 1
405 #setenv DAVID_HIGHLIGHT_COLOR_R r
406 #setenv DAVID_HIGHLIGHT_COLOR_G g
407 #setenv DAVID_HIGHLIGHT_COLOR_B b
409 # If set volumes names are shown
410 setenv DAVID_DISPLAY_PVNAME 1
411 # If set supresses the call to dawn
412 #setenv DAVID_NO_VIEW 1
413 setenv DAVID_EPSILON_3D 0.001
415 if ( "$VERBOSE" == "YES" ) then
416 if ("$?DAVID_RAINBOW_FLAG" == 1) then
417 echo " DAVID Rainbow mode is ON"
419 if ("$?DAVID_HIGHLIGHT_COLOR_R" == 1) then
420 echo " DAVID Highlight color (Red) set to ${DAVID_HIGHLIGHT_COLOR_R}"
422 if ("$?DAVID_HIGHLIGHT_COLOR_G" == 1) then
423 echo " DAVID Highlight color (Green) set to ${DAVID_HIGHLIGHT_COLOR_G}"
425 if ("$?DAVID_HIGHLIGHT_COLOR_B" == 1) then
426 echo " DAVID Highlight color (Blue) set to ${DAVID_HIGHLIGHT_COLOR_B}"
428 if ("$?DAVID_DISPLAY_PVNAME" == 1) then
429 echo " DAVID will display intersected volumes name"
431 if ("$?DAVID_DISPLAY_PVNAME" == 1) then
432 echo " Dawn will not be called from DAVID"
434 if ("$?DAVID_EPSILON_3D" == 1) then
435 echo " DAVID tolerance set to ${DAVID_EPSILON_3D}"
442 if ( "$VERBOSE" == "YES" ) then
445 setenv G4VIS_BUILD_OPENGLX_DRIVER 1
446 setenv G4VIS_BUILD_OPENGLXM_DRIVER 1
447 setenv G4VIS_USE_OPENGLX 1
448 setenv G4VIS_USE_OPENGLXM 1
449 setenv OGLHOME /usr/local
450 setenv OGLLIBS "-L$OGLHOME/lib -lMesaGLU -lMesaGL"
451 if ( $SYSTEM == "HP-UX" ) then
452 setenv OGLLIBS "-L/usr/lib ${OGLLIBS}"
454 if ( $SYSTEM == "OSF1" ) then
455 # temporarily excluded
456 # due to problems with Root
457 unsetenv G4VIS_BUILD_OPENGLX_DRIVER
458 unsetenv G4VIS_BUILD_OPENGLXM_DRIVER
459 unsetenv G4VIS_USE_OPENGLX
460 unsetenv G4VIS_USE_OPENGLXM
464 if ( "$VERBOSE" == "YES" ) then
465 if ("$?G4VIS_USE_OPENGLX" == 1) then
466 echo " OpenGL and X11 driver activated"
468 if ("$?G4VIS_USE_OPENGLXM" == 1) then
469 echo " OpenGL with Motif extension driver activated"
471 if ("$?OGLHOME" == 1) then
472 echo " OpenGL path set to ${OGLHOME}"
474 if ("$?OGLLIBS" == 1) then
475 echo " OpenGL libraries set to ${OGLLIBS}"
482 if ( "$VERBOSE" == "YES" ) then
483 echo "* OpenInventor..."
485 #setenv G4VIS_USE_OPENINVENTOR 1
486 #setenv OIHOME whatever
487 #setenv HEPVISDIR something
488 if ( "$VERBOSE" == "YES" ) then
489 if ("$?G4VIS_USE_OPENINVENTOR" == 1) then
490 echo " OpenInventor driver activated"
491 echo " OpenInventor path is ${OIHOME}"
492 echo " HepVis path is ${HEPVISDIR}"
499 if ( "$VERBOSE" == "YES" ) then
502 setenv G4VIS_BUILD_VRML_DRIVER 1
503 setenv G4VIS_BUILD_VRMLFILE_DRIVER 1
504 setenv G4VIS_USE_VRML 1
505 setenv G4VIS_USE_VRMLFILE 1
506 #Set preferred vrml viewer to be invoked in this mode
507 setenv G4VRMLFILE_VIEWER vrweb
508 #Set host name for VRML1 visualization.... the g4vrmlview machine!
509 setenv G4VRML_HOST_NAME nohost
510 #Command to run java listener for VRML driver
511 #alias javavrml "java -classpath $G4_BASE/tools/bin/java g4vrmlview vrweb"
513 if ( "$VERBOSE" == "YES" ) then
514 if ("$?G4VIS_USE_VRML" == 1) then
515 echo " VRML driver activated"
516 echo " Host Name for remote visualization is ${G4VRML_HOST_NAME}"
518 if ("$?G4VIS_USE_VRMLFILE" == 1) then
519 echo " VRML file driver activated"
520 echo " VRML viewer set to ${G4VRMLFILE_VIEWER}"
527 if ( "$VERBOSE" == "YES" ) then
528 echo "* Ray Tracer..."
530 #setenv G4VIS_BUILD_RAYTRACER_DRIVER 1
531 #setenv G4VIS_USE_RAYTRACER 1
532 if ( "$VERBOSE" == "YES" ) then
533 if ("$?G4VIS_USE_RAYTRACER" == 1) then
534 echo " Ray tracing driver activated"
541 if ( "$VERBOSE" == "YES" ) then
542 echo "* Geant Adaptative GUI (GAG)..."
544 setenv G4UI_BUILD_GAG_SESSION 1
545 setenv G4UI_USE_GAG 1
546 setenv MOMOPATH ${G4_BASE}/tools/GAG/tcltk
547 if ( "`echo ${PATH} | grep ${MOMOPATH} `" == "" ) then
548 setenv PATH "${PATH}:${MOMOPATH}"
551 set NCLASSPATH = ".:${G4_BASE}/tools/swing-1.0.3/swingall.jar:${G4_BASE}/tools/GAG/java/GAG.jar"
552 if ("$?CLASSPATH" == 0) then
553 setenv CLASSPATH $NCLASSPATH
555 if ( "`echo ${CLASSPATH} | grep ${NCLASSPATH} `" == "" ) then
556 setenv CLASSPATH "${CLASSPATH}:${NCLASSPATH}"
560 if ( "$VERBOSE" == "YES" ) then
561 if ("$?G4UI_USE_GAG" == 1) then
562 echo " GAG UI activated"
563 echo " Momo path set to $MOMOPATH"
564 echo " NOTE: Run "\'tmomo\' "to use Momo (TK/Tcl version)"
565 echo " The path to the java GAG code was updated"
566 echo " NOTE: Run "\'java gag\'" to use GAG (java version)"
571 if ( "$VERBOSE" == "YES" ) then
572 echo Unsetting G4 Visualization env. variables...
576 unsetenv G4UI_BUILD_XM_DRIVER
577 unsetenv G4UI_BUILD_XM_SESSION
581 unsetenv G4VIS_BUILD_DAWN_DRIVER
582 unsetenv G4VIS_BUILD_DAWNFILE_DRIVER
583 unsetenv G4VIS_USE_DAWN
584 unsetenv G4VIS_USE_DAWNFILE
585 unsetenv G4DAWNFILE_VIEWER
587 unsetenv G4DAWN_MULTI_WINDOW
588 if ( $SYSTEM == "Linux" ) then
589 unsetenv G4DAWN_NAMED_PIPE
593 unsetenv DAVID_RAINBOW_FLAG
594 unsetenv DAVID_HIGHLIGHT_COLOR_R
595 unsetenv DAVID_HIGHLIGHT_COLOR_G
596 unsetenv DAVID_HIGHLIGHT_COLOR_B
597 unsetenv DAVID_DISPLAY_PVNAME
598 unsetenv DAVID_NO_VIEW
599 unsetenv DAVID_EPSILON_3D
602 unsetenv G4VIS_BUILD_OPENGLX_DRIVER
603 unsetenv G4VIS_BUILD_OPENGLXM_DRIVER
604 unsetenv G4VIS_USE_OPENGLX
605 unsetenv G4VIS_USE_OPENGLXM
610 unsetenv G4VIS_USE_OPENINVENTOR
613 unsetenv G4VIS_BUILD_VRML_DRIVER
614 unsetenv G4VIS_BUILD_VRMLFILE_DRIVER
615 unsetenv G4VIS_USE_VRML
616 unsetenv G4VIS_USE_VRMLFILE
617 unsetenv G4VRMLFILE_VIEWER
618 unsetenv G4VRML_HOST_NAME
621 unsetenv G4UI_BUILD_GAG_SESSION
622 unsetenv G4UI_USE_GAG
630 if ( "$?AG4_OPACS" == 1 ) then
631 if ( "$VERBOSE" == "YES" ) then
634 setenv AG4_VISUALIZE 1
637 # OpenGL: needed by OPACS
639 setenv G4VIS_BUILD_OPENGLX_DRIVER 1
640 setenv G4VIS_USE_OPENGLX 1
641 setenv OGLHOME /usr/local
642 setenv OGLLIBS "-L$OGLHOME/lib -lMesaGLU -lMesaGL"
643 if ( $SYSTEM == "HP-UX" ) then
644 setenv OGLLIBS "-L/usr/lib ${OGLLIBS}"
650 setenv G4VIS_BUILD_OPACS_DRIVER 1
651 setenv G4UI_BUILD_WO_DRIVER 1
652 setenv G4UI_BUILD_WO_SESSION 1
653 setenv G4VIS_USE_OPACS 1
655 setenv OPACS_HOME $G4_BASE/tools/OPACS
656 #setenv OPACS_HOME /afs/cern.ch/rd44/dev/OPACS
657 if ( $SYSTEM == "Linux" ) then
658 setenv G4_OPACS_WIDGET_SET lesstif
660 setenv G4_OPACS_WIDGET_SET Xm
662 source $OPACS_HOME/OPACS/v3/setup.csh
663 setenv WOENVIRONMENT $AG4_INSTALL/bin/Alice.odb
664 setenv OPATH "$OPATH $G4INSTALL/environments/OPACS/usr"
665 if ( "$VERBOSE" == "YES" ) then
666 if ("$?G4VIS_USE_OPACS" == 1) then
667 echo " OPACS driver activated"
668 echo " OPACS path set to $OPACS_HOME"
672 if ( "$VERBOSE" == "YES" ) then
673 echo "* Unsetting OPACS driver env. variables ..."
675 unsetenv G4VIS_BUILD_OPACS_DRIVER
676 unsetenv G4UI_BUILD_WO_DRIVER
677 unsetenv G4UI_BUILD_WO_SESSION
678 unsetenv G4VIS_USE_OPACS
681 unsetenv G4_OPACS_WIDGET_SET
683 unsetenv WOENVIRONMENT
688 # path to AliGeant4 config scripts
690 if ( "`echo ${PATH} | grep ${AG4_INSTALL}/config `" == "" ) then
691 if ( "$VERBOSE" == "YES" ) then
692 echo Adding ${AG4_INSTALL}/config to the path...
694 setenv PATH "${PATH}:${AG4_INSTALL}/config"
698 # path to shared libraries
700 if ( $SYSTEM == "HP-UX" ) then
701 set SHLIBVAR = $SHLIB_PATH
702 set SHLIBVARNAME = SHLIB_PATH
704 if ( $SYSTEM == "Linux" ) then
705 set SHLIBVAR = $LD_LIBRARY_PATH
706 set SHLIBVARNAME = LD_LIBRARY_PATH
708 if ( $SYSTEM == "OSF1" ) then
709 set SHLIBVAR = $LD_LIBRARY_PATH
710 set SHLIBVARNAME = LD_LIBRARY_PATH
712 if ( $SYSTEM == "SunOS" ) then
713 set SHLIBVAR = $LD_LIBRARY_PATH
714 set SHLIBVARNAME = LD_LIBRARY_PATH
717 if ( "`echo ${SHLIBVAR} | grep ${G4INSTALL}/lib/${G4SYSTEM} `" == "" ) then
718 if ( "$VERBOSE" == "YES" ) then
719 echo Adding ${G4INSTALL}/lib/${G4SYSTEM} to the shared libraries path...
721 set SHLIBVAR="${G4INSTALL}/lib/${G4SYSTEM}:${SHLIBVAR}"
723 if ( "`echo ${SHLIBVAR} | grep ${CLHEP_BASE_DIR}/lib `" == "" ) then
724 if ( "$VERBOSE" == "YES" ) then
725 echo Adding ${CLHEP_BASE_DIR}/lib to the shared libraries path...
727 set SHLIBVAR="${SHLIBVAR}:${CLHEP_BASE_DIR}/lib"
730 setenv $SHLIBVARNAME $SHLIBVAR
734 # Remove unneeded variables. If this is not done the vars. remain in the env.
748 echo "Default ALICE environment for GEANT4 has been set."