猪头Geant4讲座(8)

时间:2025-04-20

值得一提的是,在Geant4中为了定义复杂的混合物,还提供了

AddMaterial(G4Material* material, //the material

G4double fraction); //fractionOfMass

函数,通过这个函数可以将已经定义好的材料作为新材料的一种组成直接添加。

如$G4INSTALL/example/novice/N03中气凝胶就是由62.5%的二氧化硅、37.4%的水和0.1%的碳组成的,由于二氧化硅和水在之前都已经定义了,因此直接使用AddMaterial(G4Material* material, G4double fraction)添加即可,而碳则是一种元素需要用AddElement(G4Element* element , G4double fraction)添加,如下:

G4Material* Aerog =

new G4Material("Aerogel", density= 0.200*g/cm3, ncomponents=3);

Aerog->AddMaterial(SiO2, fractionmass=62.5*perCent);

Aerog->AddMaterial(H2O , fractionmass=37.4*perCent);

Aerog->AddElement (C , fractionmass= 0.1*perCent);

而对于单质,由于是由一种元素组成的,因此可以将元素定义和材料定义合并,

参考$G4INSTLL/source/materials/include/G4Material.hh如下

// Constructor to create a material from scratch.

//

G4Material(const G4String& name, //its name

G4double z, //atomic number

G4double a, //mass of mole

G4double density, //density

G4State state = kStateUndefined, //solid,gas

G4double temp = STP_Temperature, //temperature

G4double pressure = STP_Pressure); //pressure

如$G4INSTALL/example/novice/N03中铝材料就是直接定义的。

new G4Material("Aluminium", z=13., a=26.98*g/mole, density=2.700*g/cm3);

需要注意的是在采用直接定义法定义元素或者直接定义单质的时候,其中的原子序数的类型是G4double,而不是G4int,但是从$G4INSTLL/source/materials/include/中看,这个变量最终似乎是被转换为G4int型处理的。由于时间关系,本人没有进行深入地研究,有兴趣的同仁可以研究一下这里为什么不用G4int而用G4double,是否还有别的含义。

猪头Geant4讲座第六讲——几何模型

上一讲我们讲过了,几何结构类(DetectorConstruction)属于强制初始化类,其主要功能是构建模拟问题的几何结构,包括各部分的材料、形状、尺寸、位置等信息。

前面我讲了材料如何定义,今天我主要讲几何模型的建立以及各部分材料的设置。

在讲如何建立几何模型前我想首先讲一下Geant4中所采用的几何建模思想。

学过MCNP或Fluka的都知道MCNP和Fluka采用的是CG模型,所谓CG模型就是Combination

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

精彩图片

热门精选

大家正在看

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

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

支付方式:

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

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