猪头Geant4讲座(9)

时间:2025-04-20

Geometry,我习惯翻译为组合几何模型,CG模型顾名思义就是整个模型由一块块小模块组合而成,打个不恰当的比方就是搭积木。这种模型的要求就是“不交不空”,既不能有相交的部分,也不能有空白的地方。CG模型是粒子输运蒙卡模拟中非常常用的一种。

Geant4采用的模型则不同,目前我没看到有关此模型的确切名称,但我习惯将之称为嵌套模型或盒子模型,因为其建模的方式就如往大盒子里放小盒子。在Geant4中首先我们要建立一个最大的盒子,称为World Volume,然后往这个大盒子里面放各种各样的小盒子(部件),然后每个小盒子(部件)里面还可以放更小的盒子(零件),放入的小盒子将自动代替大盒子原有部分。在Geant4中,将大盒子称为Mother Volume(母体),小盒子称为Daughter Volume(子体)。

除了World Volume之外,每个Volume(体)都必须且只能有一个母体,但可以没有子体,也可以有多个子体。

Geant4的这种盒子模型的要求是:“不交不超”。“不交”就是要求同一个大盒子里面的小盒子,即同一等级的子体不能有相交的部分;“不超”就是要求小盒子不能超过大盒子的范围,即子体不能超出母体。用集合的语言描述就是

Volume i(level n)∩Volume j(level n)=Ф; Daughter Volume∈Mother Volume.

下面就可以讲如何设置这些盒子(Volume)。

Geant4中每个这样的盒子的安放又分为两步。第一步是构建盒子,称为Logical Volume(逻辑体);第二步是将盒子摆放到正确位置,变为Physical Volume(物理体)。

构建盒子又分为两步,第一步是确定盒子形状,第二步是确定盒子的材料等属性。

形状在Geant4中被称为Solid。在Geant4中提供了多种固有的形状,如球形、长方体、锥体等,可以在$G4INSTALL/source/geometry/solids里面查找。

此外,对于一些复杂的形状,用户也可以利用基本形状通过交并补等布尔运算方式完成,布尔运算的方式请参考$G4INSTALL/source/geometry/solids/Boolean。

确定了盒子形状后,就是设置盒子的材料、磁场等属性。

这些属性的设置通过G4LogicalVolume类来完成,设置方法如下:

G4LogicalVolume(G4VSolid* pSolid, //形状

G4Material* pMaterial, //材料

const G4String& name, //逻辑体名字 户也可以通过G4VSolid类构建自己的形状,请参见$G4INSTALL/source/geometry/management/include/G4VSolid.hh。

猪头Geant4讲座(9).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219