First thing first


注:该篇取自github上steven walton的G4手册,原地址如下
https://github.com/stevenwalton/Geant4Tutorials

使用G4模拟的第一件事是需要建立一个自己的源码文件夹。在安装目录下,有一个文件夹叫做’geant4.sh’。因此笔者建议添加

source /path/to/geant4-install/bin/geant4.sh

到你的 bashrc 文件。

当然也由 c-shell 文件。

请注意,Geant4最适合使用这两个 shell,因此如果您使用类似 z-shell 之类的程序,那么预计会出现错误。在运行 Geant4程序时,最好只切换到 bash。

警告

如果你不太懂 c 或 c + + ,你将很难用 Geant4创建程序。
着重需要学习的C/C++知识包括:类/结构、初始化列表和指针等。Geant4工具箱是围绕类创建的,因此如果您不知道如何使用它们并引用类中的对象,那么学习将变得很困难。

你还应该了解有关cmake文件和脚本编写的一些基础知识。当然,这部分可以从例子中学习。

创建一个示例程序


安装完成后就应该学会如何创建示例了。
GEANT4的示例程序在该路径下:
geant4-install path/share/Geant4.version/examples/basic

在该处创建一个新目录B1-build,或者命名一个你喜欢的名字。
从该目录下,我们以如下顺序运行程序:

mkdir B1-build
cd B1-build
cmake ../B1
make -j6
./example1

你可以运行第一个Geant4示例,并看到类似下面的内容:


这是使用了可视化工具QT来运行G4。

现在我们要开始一个模拟。
因此,在“Session”后面键入/run/beamOn 10,这表示模拟了从左侧入射的10个伽马射线。这是world里面,-x点处,yz平面上的均匀分布。foo/basic/B1/src/B1PrimaryGeneratorAction.cc 里面展示了其是如何创建的。

在输出界面,你可以看到volume内部所有的辐射剂量成绩,参见B1RunAction.cc。

当然,可以将初始粒子换成电子:/gun/particle e-
运行另外10个粒子,我们可以看到更多的黄色点,并且所有绿线均以红色部分(带有更多的黄色点)开头。
黄点表示某种相互作用。光束的颜色表示其电荷。红色表示负电荷,绿色表示中性电荷(在这种情况下为伽马射线),蓝色表示正电荷(通过切换为正电子e +进行验证,然后尝试质子为质子)。

改变入射粒子的能量可以使用如下代码:/gun/energy 10 MeV

检查B1目录下的vis.macrun.mac文件。vis.mac将包含用于设置的初始命令。包括相机(QT的显示)的方向,轴,文本等。run.mac文件包含用于运行程序的宏。如果只需要结果而没有可视化效果,则只需运行./exampleB1 run1.mac,它将为你运行文件中列出的命令。如果你需要运行更复杂的模拟,这将非常有用。如果你程序的输出很多,建议运行类似./exampleB1 run1.mac | tee output.txt的东西,它将所有进入屏幕的输出也保存在一个名为output.txt的文件中。

建议通读基本示例以了解如何创建所有内容。这些是可以创建的一些更简单的几何形状和方案。

GEANT4学习资料-G4手册(steven walton)相关推荐

  1. STM32单片机(1) 总记 学习资料+参考手册+LED灯

    [转载请注明出处:http://blog.csdn.net/leytton/article/details/37740913] 学习资料 视频教程  李想stm32视频教程49集 http://pan ...

  2. CCNA精品学习资料汇总(学习手册+笔记+题库)

       CCNA精品学习资料汇总(学习手册+笔记+题库) CCNA认证标志着具备安装.配置.运行中型路由和交换网络,并进行故障排除的能力.获得CCNA认证的专业人士拥有相应的知识和技能,能够通过广域网与 ...

  3. Redis学习资料整理

    Redis学习资料: (1)Redis设计与实现 (2)十五分钟介绍 Redis数据结构 (3)redis安装 (4)redis指令手册中文版 Hiredis学习资料: (1)hiredis安装及测试 ...

  4. 【原创】分享一些机器学习和深度学习的学习资料

    如果你还在苦苦寻找机器学习和深度学习入门资料的话,或许可以看看本文我的一些推荐,这些材料我自己都学过一遍,分享一下点评,希望对你有帮助.注意,本文只是点评这些资源,不提供任何资源的盗版下载,所有资源我 ...

  5. python资料下载-Python大量学习资料集锦(全部免费下载)

    大量Python学习资料集锦: 1. 数据结构:Python语言描述(英).pdf:https://474b.com/file/15153148-463101632 2. 草根学习Python.pdf ...

  6. [转]机器学习和深度学习资料汇总【01】

    本文转自:http://blog.csdn.net/sinat_34707539/article/details/52105681 <Brief History of Machine Learn ...

  7. 零基础的跨界自学拿到腾讯Offer的学习资料

    这是我的一个朋友自学资料包,通过这个资料包自学拿到了腾讯的Offer, 下面是他之前入门学习Python时候的学习资料,非常全面,从Python基础.到web开发.数据分析.机器学习.深度学习.金融量 ...

  8. 前端学习资料及路线名称网站

    IT前端学习资料及路线 名称 网站 JQuery文件网 https://code.jquery.com/jquery/ jQuery手册(pc端) http://jquery.cuishifeng.c ...

  9. [转载]一个游戏程序员的学习资料

    想起写这篇文章是在看侯杰先生的<深入浅出MFC>时,突然觉得自己在大学这几年关于游戏编程方面还算是有些心得,因此写出这篇小文,介绍我眼中的游戏程序员的书单与源代码参考.一则是作为自己今后两 ...

最新文章

  1. SQL语句 - 嵌套查询
  2. autossh端口映射
  3. WWDC 2013 Session笔记 - iOS7中的多任务
  4. java list 初始化_Java新特性:数据类型可以扔掉了?
  5. 职业生涯中12个最致命的想法
  6. linux系统登陆问题,Linux之登陆问题
  7. php 函数命名 特殊字符,php 特殊字符处理函数
  8. Win11系统调节屏幕亮度的方法
  9. java jar包 配置文件_java 导入jar包中配置文件
  10. 例子 类的定义与对象的创建 狗的例子
  11. CCF-CSP 稀疏向量问题(2020-6)
  12. c++函数不允许递归_递归优化的这三种方式你知道吗?
  13. RTP协议与RTCP协议简介
  14. 第24期、宠物医院管理系统
  15. 【基础】603- 深入分析Session和Cookie
  16. linux外网服务器跳转内网服务器实现内网访问(iptables)
  17. 看门狗的喂法(独立看门狗和窗口看门狗的区别)!
  18. 转:美国我来了:飞去美国各个程序最全解读
  19. MySQL从删库到跑路(7):连接查询,用联系的观点看女神与渣男
  20. 鲁棒随机优化(Robust Stochastic Optimization)和RSOME

热门文章

  1. pmsm matlab模型,Simulink中PMSM模型的改进在电机控制仿真中的工程应用
  2. 计算机系外场小游戏,外场活动游戏大全.doc
  3. 年度十大金融投资书籍
  4. 数据库应用——MySQL基础知识和操作数据库
  5. 带看板的项目管理工具TaskCafe
  6. 科技以换皮为本:路遥工具箱 V4 版本发布
  7. HTTP, 网络七层模型
  8. 设备树匹配内核匹配驱动程序的理解
  9. 数字电路:硬件描述语言AHDL纵览
  10. 如何在线将XPS转换成Word文档?