for the moment, i think GEANT4 is a set of libraries (of physical process, meterial) and a tool (Monte Carlo method).
As you can see, Visualization is not included in GEANT4. I mean, GEANT4 can output some files for other Visualization programs, but those programs have to be install separately.
A complete environment = GEANT4 + Visualization
//——————– GEANT4 installation
To install GEANT4, you can go to http://geant4.web.cern.ch/ to download to source code.
The installation method can be found in
http://geant4.web.cern.ch/geant4/support/userdocuments.shtml
basically, unzip the source code.
tar -zxvf geant4-source
mkdir geant4-build
cd geant4-build
cmake -DGEANT4_INSTALL_DATA=ON -DGEANT4_USE_NETWORKVRML=ON -DCMAKE_INSTALL_PREFIX=/path/to/geant4-install geant4-source
make
make install
There are two options, 1 is the GEANT4_INSTALL_DATA, this will download and install the physical process for radiation-matter interaction. 2 is the GEANT4_USE_NETWORKVRML, this will enable network VRML visuallization. This is a local install, all the installed files are located at /path/to/geant4-install. After the installation, better to write this in .bashrc
cd ~/geant4.10.02-install/bin
. geant4.sh
cd ~/
The only difficulty is the CMAKE 3.0 or above. But all errors i met can be easily found in google.
//————— Visualization program.
I skipped the openGL, as it is well known for unfriendly for NVidia display card.
I tried DAWN and freeWRL. DAWN is a static visualization. It read *.prim files and output an *.eps file for fixed angle. freeWRL is a VRML display using java-script, an alternative is openVRML. But I cannot install openVRML.
DAWN can be installed from http://geant4.slac.stanford.edu/Presentations/vis/G4DAWNTutorial/G4DAWNTutorial.html#applicationinstall, I have zero problem.
FreeWRL is a bit tricky. I can only install the 2.3.3.1 version, not earlier, not later. I don’t know why. It require javascript engine, apt-get install libmozjs185-dev. when it said any thing missing, just look for libXXXX.
//——————————– Example.
I took the example form the geant4-source/example/basic/B1, copy it to ~/geant4Works/B1.
mkdir B1-build
cd B1-build
cmake -DGeant4_DIR=/path/to/geant4-install/lib/Geant4-10.2.0 B1
make
to run, you simple ./exampleB1
the macro files are *.mac. vis.mac is visualization macro, and will be called by init_vis.mac. You should go to vis.mac and modify it.
To run,
Idle> /control/execute run1.mac
I modified the last line be /run/beamOn 100, the result is
you can see there are 100 protons passing through. I don’t understand the example B1, I’m just showing you what is a proper result.
[Update 2024-02-15]
For the GEANT4 11.2.0, the cmake
cmake -DGEANT4_INSTALL_DATA=On -DCMAKE_INSTALL_PREFIX=/opt/geant4-v11.2.0 -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_QT=ON -DGEANT4_USE_QT_QT6=ON ../geant4-v11.2.0
make -j6
sudo make install
The -J6 means using 6 threads to compile. The default installation path is /usr/local/. The above option enables OpenGL for X11 and Qt6 visualization.
after installation, add the following line to ~/.bashrc
source /usr/local/bin/geant4.sh
For Ubuntu 22.02, openGL is already installed, for Qt6, use
sudo apt install sudo apt install qt6-base-dev libqt6charts6-dev
To use openGL,
/vis/open OGL
for Qt
/vis/open OGLIQt