Gate用户手册(三)定义一个系统

本文详细介绍了Gate软件中系统概念的定义与应用,系统作为关键组件,提供了预定义的几何体来仿真各种扫描器。文章深入讲解了如何将几何结构与系统关联,包括cylindricalPET和ecat系统的具体配置过程,以及如何选择合适的系统和避免几何体积重叠。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文链接http://wiki.opengatecollaboration.org/index.php/Users_Guide:Defining_a_system

系统的定义

系统是Gate中的关键概念,它提供预定义的几何体来仿真一个扫描器,一个系统可以用来模拟几个具有相同一般几何特征的扫描器。可以被当做一种的模板,这种模板以tree level的确定方式存储,含有一些关键成分,每一个成分扮演自己独有的的角色。

例如,在cylindericalPET扫描系统中,含有晶石的几何volume组织在矩阵里面。在这个结构的顶部,含有module的分区在一个圆柱表面重复,来建立整个设备。因此遵守这个结构的PET扫描器家族可以被描述为在使用PET系统,如图4所述,含有叫做rsectors, modules, submodules, crystal,layer的volumn

Gate中含有scanner, SPECTHead, cylindricalPET, ecat, CPET, OPET  OpticalSystem系统,可以用来仿真大部分已存在的成像设备

系统的选择

使用Gate时可以不使用系统,不使用系统的话,获得不到检测器中的粒子互动。原因是记录hits的volume只能是属于已定义的系统的volume。当用户只测试扫描器的几何结构,没有必要使用预定义的系统。但是如果用户想要记录与检测器内粒子相关的信息,geometry必须与系统向关联。这部分解释与几何相关的元素和规则。

系统的限制

除了常见的扫描器,还要把不同成分的几何形状、晶石形状、检测器材料考虑在内。

每一个/eve/都分配在一个几何形状的物理模型中。一个level volumn必须被完整地封装在上一level volume。

level的数量必须设置,必须遵循表4.1中的list。不同敏感块的数量完整地被选择的系统定下来,输出特定的数据格式

每一level的最大成分数量取决于输出格式,因为会被使用的晶石的数量而限制。更多信息请查看Users Guide V7.2:Data output

怎样把geometry与系统相连

通过下面的命令把geometry和系统相连,

systems/SystemName/Level/attach UserVolumeName

不同类型的系统

扫描器

CylindricalPET

描述:cylindericalPET可以描述大部分的小型动态PET扫描器,cylinderPET的主要specificity是以LMF形式输出文件。LMF格式完整描述请参见Users Guide V7.2:Data output#LMF output

CylindricalPET是基于圆柱几何体,包含5个level,从mother到daughter,定义如下:

  • world cylindricalPET 世界圆柱.
  • rsector (depth=1)一个箱子, 在cylindricalPET里面用环重复.
  • module (depth=2)rsector里面的箱子. 用cubicarray repeater 重复,没有x方向的重复。这个是可选项
  • submodule(depth=3) module里面的箱子. cubicarray repeater 重复,没有x方向的重复。这个是可选项
  • crystal (depth=4) submodule里的箱子.cubicarray repeater 重复,没有x方向的重复。这个是可选项
  • layer (depth=5) crystal里面的径向箱子. 不能用repeater,而应该在macro文件中一个一个建立. layer必须用下面命令设置为合理
    /attachCrystalSD

粗体字是专用名词,可以查看表4.2

layer的材料必须是检测器的材料,其他level的材料可是任何材料。

重要提示:可视化可以帮你无overlap地建立这个geometry,Gate运行一个测试来检测volume overlap,但是精度有限,这个测试在初始化Gate之后,可以查看Users Guide V7.2:Getting started

/run/initialize
/geometry/test/recursive_test 

用户应该保证volume不比mother volume大

使用:一个使用cylinderPET系统的PET扫描器定义如下,扫描器的定义应该在宏文件的开始,在初始化前

ECAT

描述:ecat系统是cylinderPET的简化版本,这样的扫描器基于块检测器原则,包含一组8×8晶石,被4个光电倍增管读取。The
这些块沿环形几何结构排列,以产生多环形探测器。

一个ecat系统的例子是

https://github.com/OpenGATE/GateContrib/blob/master/imaging/PET/PET_Ecat_System.mac

这个系统只有三层,base(整个检测器),block(块),crystal(块中的晶石)。除了标准输出(root和ascii),还有sinogram和ecat7输出。

使用:下面是一个模型四环块扫描器,它必须选择的系统(ecat)后面定义,被定义为world的volume daughter.它是环状的,兵营该包含所有的检测器。

/gate/world/daughters/name ecat 
/gate/world/daughters/insert cylinder 
/gate/ecat/setMaterial Air 
/gate/ecat/geometry/setRmax 442.0 mm 
/gate/ecat/geometry/setRmin 412.0 mm 
/gate/ecat/geometry/setHeight 155.2 mm 
/gate/ecat/setTranslation 0.0 0.0 0.0 mm 

图4.6 base的定义

图4.7block的定义

下面的命令设置base里面第一个block的位置和大小,这是一个矩形平行管道,应包含所有的晶石。对于以base轴为中心的多重块环系统,第一个block的轴位置应该设置为零。图4.7

/gate/ecat/daughters/name block 
/gate/ecat/daughters/insert box 
/gate/block/placement/setTranslation 427.0 0.0 0.0 mm 
/gate/block/geometry/setXLength 30.0 mm 
/gate/block/geometry/setYLength 35.8 mm 
/gate/block/geometry/setZLength 38.7 mm 
/gate/block/setMaterial Air 

图4.8

下面的命令设置block里面第一个晶石的位置和大小,对于以块为中心的晶石,第一个晶石的位置yinggaii在block的中心。

/gate/block/daughters/name crystal 
/gate/block/daughters/insert box 
/gate/crystal/placement/setTranslation 0.0 0.0 0.0 mm 
/gate/crystal/geometry/setXLength 30.0 mm 
/gate/crystal/geometry/setYLength 4.4 mm 
/gate/crystal/geometry/setZLength 4.75 mm 
/gate/crystal/setMaterial BGO 

最后描述了晶石组,晶石的采样,以及晶石的大小都被定义。晶石组以原来晶石的位置为中心。

/gate/crystal/repeaters/insert cubicArray 
/gate/crystal/cubicArray/setRepeatNumberX 1 
/gate/crystal/cubicArray/setRepeatNumberY 8 
/gate/crystal/cubicArray/setRepeatNumberZ 8 
/gate/crystal/cubicArray/setRepeatVector 0. 4.45 4.80 mm 

为了创建完整的扫描器,后面定义了环,下面的命令设置每个块环的块数量和块环的数量。多块环系统以原始块的轴位置为中心。

/gate/block/repeaters/insert linear 
/gate/block/linear/setRepeatNumber 4 
/gate/block/linear/setRepeatVector 0. 0. 38.8 mm 
/gate/block/repeaters/insert ring 
/gate/block/ring/setRepeatNumber 72 

这个描述4块环扫描的结果,也就是32crystal-ring扫描,每个crystal-ring,576crystal

然后用命令把block和crystal链接到ecat里面对应的成分

systems/ecat/block/attach block 
systems/ecat/crystal/attach crystal 

为了检测事件,晶石最后设置为敏感检测器,查看Users Guide V7.2:Attaching the sensitive detectors#The crystalSD).

/gate/crystal/attachCrystalSD 

数字器部分和cylinderialPET部分相同

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值