一种用于蒙特卡罗模拟计算程序的虚拟分层建模方法与流程

文档序号:14774341发布日期:2018-06-23 02:39阅读:386来源:国知局

本发明属于蒙特卡罗模拟计算技术,具体涉及一种用于蒙特卡罗模拟计算程序的虚拟分层建模方法。



背景技术:

蒙特卡罗方法(Monte Carlo)是一种以概率统计理论为基础的一种计算方法。该方法能够比较逼真地描述事物的特点及物理实验过程,解决数值方法难以解决的问题。广泛应用于粒子输运问题,统计物理,典型数学问题,真空技术,激光技术以及医学,生物,探矿等领域。

蒙特卡罗方法应用于粒子输运问题时的主要过程为源粒子的状态参数的确定,系统中的输运并确定下一个碰撞点,确定被碰撞的原子核、反应类型及粒子碰撞后的能量与运动方向,接着继续重复输运过程直到粒子达到停止输运的边界条件。输运过程首先是确定粒子的输运长度,然后计算粒子的当前位置与相关几何区域边界的距离,从而确定粒子的下一个碰撞点的位置。当系统中的几何区域数量较多时,因需要计算粒子到所有几何区域边界的距离,计算量较大,占用的机时较多。

Geant4是欧洲核子研究中心(CERN)研制开发的一个大型的蒙特卡罗模拟程序。蒙特卡罗模拟程序Geant4的构建几何模型方法如下,先构建一个世界体,整个系统都在这个世界体内,当粒子输运到这个世界体外时,粒子停止输运。同时,该世界体作为系统最大的母体,其它的主要几何区域应作为子体在该母体中建立。并且,每个子体同时可作为更小的感兴趣区域构建的母体。Geant4程序模拟粒子输运过程中,粒子输运到所在几何体边界后,需判断粒子输运的下一个碰撞点的所在区域,为此,需要根据粒子的位置和运动方向与其同一母体内的每一个几何体进行相交计算,确定到达边界的距离,进而确定粒子输运的下一个碰撞点的所在区域和准确位置。当前母体内的子体数量较多时,需要大量机时计算粒子到达各子体区域边界的距离。



技术实现要素:

本发明的目的在于针对利用蒙特卡罗方法计算粒子在几何体数量巨大的系统中的输运问题时的计算效率低的问题,提出一种用于蒙特卡罗模拟计算程序的虚拟分层建模方法,以提高蒙特卡罗方法的计算效率,节省计算时间。

本发明的技术方案如下:一种用于蒙特卡罗模拟计算程序的虚拟分层建模方法,包括如下步骤:

(1)建立一个虚拟几何区域,将原有的实际存在的几何体包括在内;

(2)将所建立的虚拟几何区域划分为若干个单元;

(3)以所划分的各单元为母体,在各个单元中分别构建实际的几何体。

进一步,如上所述的用于蒙特卡罗模拟计算程序的虚拟分层建模方法,步骤(2)中,将所述的虚拟几何区域按照实际需要划分为多层结构,在上一层的单元中进一步划分若干个下一层的单元;步骤(3)中在最后一层的各个单元中分别构建实际的几何体。

进一步,如上所述的用于蒙特卡罗模拟计算程序的虚拟分层建模方法,步骤(3)中,所述的最后一层的各个单元为母体,实际的几何体为子体,蒙特卡罗模拟计算程序计算母体外的粒子与实际的几何体是否相交时,只需计算其是否与母体相交,不用考虑子体,也不用考虑母体以外的其它单元。

本发明的有益效果如下:本发明提供的虚拟分层建模方法可直接应用于蒙特卡罗方法的模拟程序Geant4的几何模型构建的优化,能够较好地解决粒子在几何体数量巨大的系统中的位置快速确定问题,提高蒙特卡罗方法的计算效率,节省计算时间。

附图说明

图1为本发明具体实施方式中虚拟分层建模方法的过程示意图。

具体实施方式

下面结合附图和实施例对本发明进行详细的描述。

本发明提供的可应用于蒙特卡罗模拟程序Geant4的虚拟分层建模方法的主要思想是通过建立一个虚拟的分层几何模型,对原有的数量巨大的几何体进行分区处理。即先建立一个大的虚拟区域,将原有的数量较大的实际存在的几何体包括在内,该虚拟区域可认为是第一层;然后在这个虚拟区域内继续划分多个虚拟的几何体,作为系统的第二层区域,其每个区域应包含数量相对较少的实际存在的几何体;按照上述分层方法,可根据实际问题对区域划分到合适的层数。最后一层应构建实际存在的几何体。该方法可先确定粒子即将到达的一个相对较大的区域,然后在这个较大区域中再不断确定更小的区域,最终定位粒子实际到达的区域和准确位置。

具体过程如图1所示,包括如下步骤:

(1)建立一个虚拟几何体V1,将原有的数量较大的实际存在的几何体包括在内;

(2)将几何体V1划分成单元V2、单元V3;

(3)在几何体V2中,构建实际的几何体v4、v5、v6。

由于,Geant4建立新几何体时要求指定其应被放在另外的哪个几何体中,该几何体可被认为是新几何体的母体,新几何体为子体。Geant4程序计算母体外粒子与几何体是否相交时,只需计算是否与母体相交,不用考虑子体。如图1所示,位于几何体V1之外的粒子只需计算是否与几何体V1相交,不用考虑其它几何体;位于几何体V1的粒子输运时只需考虑是否与几何体V2,V3相交,不用考虑V4,V5,V6,位于几何体V2的粒子只需考虑是否与几何体V4,V5,V6相交,不用考虑V1,V3。因此,按照上面的几何分层方法建模,不用每次都要对粒子到达系统中存在的所有几何区域边界是否相交进行计算,极大的节省了计算时间,提高计算效率。

实施例

本发明提供的虚拟分层建模方法可应用于中子成像的蒙特卡罗模拟计算。其中,成像系统探测器部分为500×500的液闪阵列组成。由于成像探测器阵列巨大(500×500光纤阵列),需要消耗大量的CPU资源来计算粒子下一步的所在位置,为节省计算时间,可通过虚拟分层建模方法来优化探测器阵列的几何模型。具体过程如下:

(1)建立一个长方体V1,将探测器阵列(500×500光纤阵列)包括其中,V1的长和宽分别为探测器每根光纤的外径×500,高为光纤的长度。

(2)将长方体V1细分成5×5的单元V2,共25个单元V2;

(3)将上一步细分后的每个单元继续细分成10×10的单元V3,共2500个单元V3;

(4)将500×500光纤阵列按照相对位置,放置于上一步细分后的每个单元V3中,这样,每个单元V3将放置10×10根光纤,共250000根光纤。

通过对几何模型优化前后的计算时间进行了测试,计算机硬件配置为Intel Core i5,主频为2.8GHz,模拟粒子数为10万,几何模型优化前的计算时间为150分钟,几何模型优化后的计算时间为5分钟,计算速度提高30倍。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1