编译运行Geant4中B1示例

  • 拷贝B1到目标文件夹(根据自己的geant4安装路径修改)
    • cp /opt/Geant4/geant41004/share/Geant4-10.4.0/examples/basic /home/username/
  • 进入复制的B1文件夹
    • cd /home/username/B1
  • 创建build文件夹
    • mkdir build
  • 进入build文件夹,并编译
    • cd build
    • cmake ..
  • make&&make install
    • make -j8
    • make install
  • 运行./exampleB1
    • ./exampleB1

运行结果如图: avatar

编译运行sim(杨彪编写)代码

  • 复制完整的sim包(包括相关参数文件、数据文件等等)
  • 修改/sim/sim/CMakeLists.txt文件夹相关路径
    • 特别是yblib:set(YB_LIB_DIR /[filepath]/sim/yblib)
    • root库:set(ROOT_INCLUDE_DIR /opt/root61600/include)
  • 进步/[filepath]/sim/sim/build文件夹,执行cmake ..
    • 如若报错需要确认上步路径是否修改正确,或删除该文件夹下非G4的cmake生成的文件夹(可与B1对比)
  • 运行`make -j8',生成可执行文件sim

  • 运行./sim

    • ./sim phy:物理模拟, 生成文件存入/simfile/
    • ./sim vis:可视化
    • ./sim kin:运动学计算,生成文件存入/kinfile/
  • to be continued

Error1:/usr/bin/ld: 找不到 -lMathMore(参考网站

  • 意思是找不到boost_serialization共享库,这个库的文件名应该为“libboost_serializatio.so”,其命名规则是:lib+库名(即xxx)+.so。
  • 用locate命令定位XXX库文件
    • locate libMathMore.so
    • 输出结果:/opt/root61600/lib/libMathMore.so
  • 再用软链接将两者链接起来
    • sudo ln -s /opt/root61600/lib/libMathMore.so /usr/lib/libMathMore.so

to be continued

运行 ./sim vis结果如图: avatar

to be continued

In [2]:
!jupyter nbconvert geant4note_xi.ipynb --to html
[NbConvertApp] Converting notebook geant4note_xi.ipynb to html

[NbConvertApp] Writing 277968 bytes to geant4note_xi.html

In [ ]: