发明名称 一种用于中子输运的基于MCAM-Geant4自动建模方法的转换简化系统
摘要 本发明公开了一种用于中子输运的基于MCAM‑Geant4自动建模方法的转换简化方法,根据基本体特征,根据查找和组合的思想,对从半空间几何到基本体几何的转换进行简化的方法。该转换方法简化了从半空间描述转换为基于基本体的蒙特卡罗计算模型,从而使Geant4蒙特卡罗计算程序在转换时提供简化。该方法对于核辐射评估等必须利用蒙特卡罗程序的领域提供了使用基于基本体描述的蒙特卡罗计算程序的简便方法,具有重要的科学研究与工程应用价值。
申请公布号 CN104361150B 申请公布日期 2016.08.24
申请号 CN201410570850.5 申请日期 2014.10.23
申请人 中国科学院合肥物质科学研究院 发明人 汪冬;俞盛朋;程梦云;董良;吴宜灿
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 北京科迪生专利代理有限责任公司 11251 代理人 成金玉;孟卜娟
主权项 一种用于中子输运的基于MCAM‑Geant4自动建模方法的转换简化系统,其特征在于包括输入模块、查找模块、组合模块和输出模块;其中:输入模块,输入半空间描述的模型,送至查找模块进行查找;查找模块,根据输入的半空间描述的模型查找能否构成为一个完整的基本体,如果能构成一个完整的基本体,输出到输出模块中;如果不能构成为一个完整的基本体,则传递数据给组合模块;所述基本体是指长方体、圆柱体、圆锥体、六棱柱体、球体、圆环体;组合模块,根据查找模块传递来的半空间描述的模型,查找能否使用尽可能多的半空间组成一个基本体,并将结果输出到输出模块中;输出模块,将查找模块构成的基本体、组合模块组成的基本体统一输出;所述查找模块具体实现如下:(1)根据读取到的半空间模型数据进行查找;读取平面半空间,得到平面半空间的法向量、平面上一点和方向的几何数据;读取圆柱半空间,得到圆柱半空间的轴向法向量、轴线上一点、半径、内外半空间指示的几何数据;读取圆锥空间,得到圆锥空间的轴向法向量、顶点、圆锥与轴线夹角、内外半空间指示的几何数据;读取球半空间,得到球心点,半径,内外半空间的几何数据;读取圆环半空间,得到轴线向量,轴心点,轴向大半径,小半径,内外半空间的几何数据;判断一个实体下面的所有半空间是否能够组合成一个基本体,对于实体,判断是否有八个半空间,且对于这八个半空间对应的八个面中存在两个面平行并垂直于其它面,存在其余六个面两两相邻平面成120°角度;同时半空间的正负方向符合六棱柱的方向,平行的两个面对应的两个半空间交集不为空;据此构建六棱柱;判断是否有且仅有六个半空间,且六个半空间对应的六个面存在两个面平行并垂直于其余四个面,剩余的四个面两两垂直或两两平行;同时半空间的正负方向符合长方体的方向,平行的两个面对应的两个半空间交集不为空;据此构建长方体;判断是否有且仅有三个半空间,且三个半空间对应的三个面有两个平面一个圆柱面;两个平面平行并垂直圆柱面;三个半空间的交集不为空;据此构建圆柱体;判断是否有且仅有两个半空间,对应的两个面是平面和圆锥面;平面垂直圆锥面;两个半空间的交集不为空;据此构建圆锥体;(2)对于不能组成一个基本体的实体,保存数据并传递给组合模块;所述组合模块具体实现如下:根据读取到的半空间模型数据,根据优先级进行组合;主要优先级原则是优先组合为含较多半空间的基本体;根据输入数据进行查找,但得不到基本体的半空间描述的模型;输出为基本体集合;a)对于第一优先级六棱柱,遍历所有半空间a,进行判断:i.首先搜索几何体中与之垂直或平行或成120°的平面,如果有这样的半空间b,判断找到的半空间与a包围成的空间是否包含原几何体,如果包含,那么以b作为将代替a的六棱柱的另一个面,当前的平面集合A={a,b};ii.继续在几何体中搜索其它半空间,新的半空间需要与集合A中最多一个半空间平行且与其他的半空间垂直,并且与这些半空间一起交出的空间能够包含原几何体,找到后将新的半空间加入集合A,最后集合A的半空间的基础上补齐的六棱柱可以成为在基本体表达式中代替这些半空间的基本体,从而使最终生成的基本体表达式减少了新找到半空间数量的基本体;b)对于第二优先级长方体,搜索几何体中与之构成长方体的半空间,补齐缺少的面形成长方体,这样能够减少找到面数量的基本体;i.首先搜索几何体中与之垂直或平行或成90°的平面,如果有这样的半空间b,判断找到的半空间与a包围成的空间是否包含原几何体,如果包含,那么以b作为将代替a的六棱柱的另一个面,当前的平面集合A={a,b};ii.继续在几何体中搜索其它半空间,新的半空间需要与集合A中最多一个半空间平行且与其他的半空间垂直,并且与这些半空间一起交出的空间能够包含原几何体,找到后将新的半空间加入集合A,最后集合A的半空间的基础上补齐的长方体可以成为在基本体表达式中代替这些半空间的基本体,从而使最终生成的基本体表达式减少了新找到半空间数量的基本体;c)对于第三优先级圆柱面,搜索几何体中与之构成圆柱体的面,采用类似a)的方法,最后补齐缺少的面形成圆柱体,这样能够减少找到面数量的基本体;i.首先找到圆柱体内半空间;找到后再查找垂直于这个圆柱体的两个平面半空间;找到后,使用圆柱体代替找到的圆柱体内半空间和平面半空间;d)对于第四优先级圆锥面,搜索几何体中与之构成圆锥体的面,采用类似a)的方法,最后补齐缺少的面形成圆锥体,这样能够减少找到面数量的基本体;i.首先找到圆锥体内半空间;找到后再查找垂直于这个圆锥体的一个平面半空间;找到后,使用圆锥体代替找到的圆锥体内半空间和平面半空间;e)对于全部实体检索完,输出给输出模块进行输出。
地址 230031 安徽省合肥市蜀山湖路350号