G4RandGauss::shoot(double mean, double stdDev);

//产生高斯分布随机数,等同于CLHEP::RandGaussQ::shoot(double mean, double stdDev);

8.从G4Step中读取有用的信息cnscott的博客

void MySteppingAction::UserSteppingAction(const G4Step* stp)

{

G4Track* theTrack = stp->GetTrack(); //获取G4Track指针

theTrack->GetVolume()->GetName(); //获取当前几何体(PhysicalVolume)名称

G4StepPoint* preStepPoint = stp->GetPreStepPoint();

G4StepPoint* postStepPoint = stp->GetPostStepPoint(); //获取两个StepPoint的指针

if (preStepPoint->GetStepStatus() == fGeomBoundary) //判断是否位于几何体边界std::cout << "Step starts on geometry boundary" << std::endl;

if (postStepPoint->GetStepStatus() == fGeomBoundary) //判断是否位于几何体边界std::cout << "Step ends on geometry boundary" << std::endl

if (theTrack->GetTrackID() == 1) //判断是否是初级粒子(初级粒子TrackID=1)

std::cout << "Particle is a primary " << std::endl;

if (theTrack->GetParentID() == 1) //判断当前粒子是否由初级粒子产生

std::cout << "Parent was a primary " << std::endl;

G4VProcess* creatorProcess= track->GetCreatorProcess();

G4cout << creatorProcess->GetProcessName() << std::endl; //获取产生当前粒子的物理

过程名称

G4TouchableHandle theT ouchable = preStepPoint->GetTouchableHandle(); theTouchable->GetCopyNumber(); //当前几何体的Copy Number

theTouchable->GetCopyNumber(1); //当前几何体母体的Copy Number

theTouchable->GetCopyNumber(2); //当前几何体母体的母体的Copy Number,以此类推,前提是该母体是存在的,否则可能抛出异常

}

geant4构造粒子_Geant4 程序编写中的常用代码相关推荐

  1. geant4构造粒子_Geant4基础知识

    可复制.编制,期待你的好评与关注! Geant4 基础知识 G4 模拟粒子过程 : 建立一次模拟,在 G4 中称为一次 Run : Run 建立后,需要对几何结构.物理过 程进行初始化: 初始化完成后 ...

  2. geant4构造粒子_Geant4 入射粒子设置

    Geant4 入射粒子设置 在 PrimaryGeneratorAction 中设置 G4ParticleGun. 注意:关于粒子种类的定义,有两个位置可以定义,第一是在 PrimaryGenerat ...

  3. geant4构造粒子_Geant4包罗万象——目录

    Geant4 基础篇 基础0--准备与安装 0 Geant4安装 0.1 系统准备 0.2 安装步骤 1 Geant4知识储备 1.1 核物理学基本知识 1.2 C++堪可:Geant4 基础0--准 ...

  4. Excel与VBA编程中的常用代码

    Excel与VBA编程中的常用代码 用过VB的人都应该知道如何声明变量,在VBA中声明变量和VB中是完全一样的! 使用Dim语句 Dim a as integer '声明A为整形变量 Dim a '声 ...

  5. 如何使用IntelliJ IDEA的Favorites来管理项目中的常用代码

    1.如何添加favorites 项目目录树中对想要添加的文件单击右键,选择add to favorites: 确定你想要放入的 favorites list 即可. 2.如何重命名.移除.删除favo ...

  6. 在python程序编写中引用库使用的保留字是_Python 第一周编程作业

    一.编程题 1.  结合turtle库使用手册,读懂下列代码,并在jupyter编译器中运行观察结果: 依次分析下代码: 第一行 通过保留字import引用了Python中用于绘制图形的turtle库 ...

  7. 简述程序开发中的常用的加密方法

    1.对称加密 加密和解密过程使用相同的秘钥 在网络传输中, A节点向B节点传数据,在数据传输之前,先使用一个秘钥在A节点上进行加密,当数据传输到B节点时,使用相同的秘钥进行解密才能获取到原始数据.这个 ...

  8. 二进制在算法编写中的常用概念

    1.已知一个二进制数字(例如:1100101),转换为十进制数字: 2.当一个数字为奇数时,这个数字的二进制表示的最后一位一定为1:  这是因为在二进制表示十进制中,二进制数字的最后一位所代表的数字为 ...

  9. latex c语言程序,latex中添加C++代码

    HttpClient Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Ht ...

最新文章

  1. tensorflow电子书(附下载链接)
  2. linux centos 安装配置tftp服务器
  3. spring如何解决循环依赖
  4. 用户界面框架jQuery EasyUI示例大全之DataGrid(1/4)
  5. java提高篇之数组(2)
  6. 根据服务器ip地址查看虚拟目录,IIS虚拟目录实现与文件服务器网络驱动器映射共享...
  7. DBD::mysql::db do failed: Table cl_access was locked with a READ lock and can't be updated
  8. linux下grep文件内容搜索工具及基本正则表达式详解
  9. 推理集 —— 特殊的时间
  10. shell执行perl_TOOLFK工具-在线Perl代码执行工具
  11. Vimium快捷键使用
  12. 蓝桥杯2016年第七届C++省赛B组第五题-抽签
  13. c语言统计字符串中每个字符出现的次数
  14. 简单的maven引入外部jar项目打包
  15. 天地不仁,以万物为刍狗!
  16. 代码大全 服装尺寸图html,最全服装尺码对照表
  17. 北京地铁21号线_北京地铁22号线(即平谷线)全线21站具体位置确定了!
  18. php error unexpected,PHP错误syntax error unexpected T-FUNCTION的解决方案-深圳做网站-创络...
  19. H5页面免费制作工具大集合
  20. 为什么定义补码等于反码加一,知其所以然

热门文章

  1. C语言X天学习计划——期末篇(选择篇二)
  2. Oracle数据库ORA-00911:一直出现无效字符问题
  3. html选择文件框选择wood文件,CSS基础及选择器
  4. KUOKUO的趣味教程 | 进击的小怪诞生(1)
  5. android实现数组倒序,5.1.33 33.数组中的逆序对 - Android 校招面试指南
  6. 上海电信强制用户升级ADSL安装星空极速拨号软件的真实意图!!
  7. lrz实现原理_jQuery + lrz 实现本地压缩后上传图片
  8. Linux 安装pip
  9. WEB空间各种颜色十六进制代码表
  10. “名不符实”的无人银行真的还有未来吗?