给各位耕耘代码的时候考古一部童年回忆吧,最近在b站上一直在看的《小青天司徒公》,本人很喜欢的语言风格。。
操作系统:UBANTU18.04
1.准备工作
安装依赖,geant4与root有很多共同的依赖,但有一些是geant4不需要的,因为root也是科研非常需要的,所以就不挑选了,这里选择对root的依赖选择全部安装(对于UBANTU18.04):
$ sudo apt-get install git dpkg-dev cmake g++ gcc binutils libx11-dev libxpm-dev \
libxft-dev libxext-dev
gfortran libssl-dev libpcre3-dev \
xlibmesa-glu-dev libglew1.5-dev libftgl-dev \
libmysqlclient-dev libfftw3-dev libcfitsio-dev \
graphviz-dev libavahi-compat-libdnssd-dev \
libldap2-dev python-dev libxml2-dev libkrb5-dev \
libgsl0-dev libqt4-dev
安装必需的库文件:
$ sudo apt-get install cmake libx11-dev libxext-dev libxtst-dev libxrender-dev libxmu-dev libxmuu-dev
$ sudo apt-get install qt4*
在官网下载geant4.10.06.tar.gz,将文件解压到$HOME.
$ tar -zxvf geant4.10.06.tar.gz
2.下载data文件
data文件是geant4运行需要的各种数据文件,用浏览器下载好拷贝过去:data下载地址
这里选择把所有数据文件都下载,点击Data files下载所有数据文件并解压,新建一个名为data的文件夹并把所有解压后的数据文件移动到data文件夹。
3.使用cmake安装
$ mkdir BuildForGeant4 && cd BuildForGeant4
$ cmake -DCMAKE_INSTALL_PREFIX=$HOME/InstallForGeant4/ -DGEANT4_USE_OPENGL_X11=ON
\ -DGEANT4_USE_RAYTRACER_X11=ON -DGEANT4_USE_QT=ON
\ -DGEANT4_USE_SYSTEM_EXPAT=OFF
\ GEANT4_BUILD_MULTITHREADED=ON $HOME/geant4.10.06
$ make -j8
$ make install -j8
BuildForGeant4:建立此文件夹并进入此文件夹,指定安装Geant4的一些参数。
InstallForGeant4:此文件夹表示Geant4的安装位置。
geant4.10.06:表示官网下载的源程序的文件夹名字。
这个过程又卡又慢。我试过好几次安装,每到这步几近崩溃。看过其他安装教程说大概要1-2h,我运行了半天才可以。而且n次卡到某个地方就不动了(实在不行氪个新电脑吧,我就这么打算的)
总之运行成功的话,会这样结束:
--Configuring done
--Generating done
--Build files have been written to: $HOME/geant4.10.06/build
上述过程结束后,主目录下会看到geant4.10.06,BuildForGeant4,InstallForGeant4三个文件夹,把之前准备好的data文件夹移动到InstallForGeant4/share/Geant4-10.6.0下 (此文件夹下有名为geant4make的文件夹)。
4.设置环境变量
把该命令写到.bashrc中。
$ echo 'source $HOME/InstallForGeant4/bin/geant4.sh' >> $HOME/.bashrc
5.运行例子B1
geant4所有的官方例程在$HOME/geant4.10.06/examples/里面,其中basic中的例程B1~B5适合入门学习。复制basic中的B1到workdir进行学习,最好不要直接在examples里面改(本着好不容易装好的,麻烦能省则省的原则)
$ mkdir -p $HOME/workdir/geant4
$ cd $HOME/workdir/geant4
$ cp -r $HOME/InstallForGeant4/share/Geant4-10.6.0/examples .
$ mkdir build-basic && cd build-basic
$ mkdir build-B1 && cd build-B1
$ cmake ../../examples/basic/B1
$ make
$ ./exampleB1
出现了如下界面,则表示安装成功。
在session中键入:/run/beamOn 10 表示发射10个粒子。
整理的不多,勿以善小而不为。