Hello, Geant4

环境
系统Manjaro linux,64位
图形界面KDE
IDECLion 2020.3.2
CMake版本3.19.5
Geant4版本10.7.0

1.Geant4的安装

manjaro的安装很简单,通过yay即可一步安装。运行以下命令即可在yay库里查找geant4:

$ yay -Ss geant4
...
aur/geant4 10.7.1-1 (+14 1.45) 
    A simulation toolkit for particle physics interactions.

安装应该是用:

$ yay -S geant4

但我不是通过这种方式安装的,而是按照installguide.html一步步安装,比较繁琐,我将安装路径设置成用户根目录~,也就是说bin、include这些文件夹都会在~下,通用来说,你们安装过程设置的CMAKE_INSTALL_PREFIX路径下在安装完成后应该有bin等文件夹,如postinstall.html中所示。

2.用Geant4开发一个简单的程序

大体思路是按照GettingStarted/mainProgram.html中所示来做。

首先打开CLion,新建一个Project,图里的/home/dondy/就是我的用户根目录了:

点击Create之后就会自动生成项目,貌似是基于CMake生成的,

2

下一步是导入Geant4的库文件,我的Geant4安装路径是~,则导入~/include文件夹,具体做法是修改CMakeList.txt,加入include_directories这一行:

修改后上方提示reload,点Reload changes,之后会在Project视图里出现导入的库:

这一步标志着你已经可以在cpp文件里写include导入geant4的库文件了。

如发炮制加上一行,添加Geant4的链接库,虽然我知道什么意义,但应该是不能少的:

link_directories(~/lib)

接下来是愉快的coding时间,复制a-sample-main-method里的Listing 1到自己的main.cpp文件(原来的内容清空),然后就冒出了一堆红色的错误(血压开始升高):

原因是找不到文件,其实前两个文件是库文件,在include文件夹的Geant4子文件夹下,而include文件夹刚刚已经导入了,只要稍加修改即可(血压稍降):

#include <Geant4/G4RunManagerFactory.hh>
#include <Geant4/G4UImanager.hh>

后三个文件不是库文件,看a-sample-main-method才知道ExG4DetectorConstruction01、ExG4PhysicsList00和ExG4ActionInitialization01这三个类需要自己定义...(这算个p的a-simple-main-method!哦不是simple而是sample啊,那没事了)。

我试试直接照搬example B1里面的代码吧。

晕,不如直接在example的基础上改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值