一种基于cuda的稳态烯烃共聚快速序列分布计算方法

文档序号:6619590阅读:325来源:国知局
一种基于cuda的稳态烯烃共聚快速序列分布计算方法
【专利摘要】本发明公开了一种基于CUDA平台下的应用在稳态烯烃共聚中的快速序列分布计算方法。本发明针对聚烯烃反应中的稳态过程,依靠聚合反应的动力学机理,以蒙特卡罗方法为基础,在统一计算设备架构(CUDA)平台下给出了求取共聚物序列分布的快速计算方法。该方法首先通过聚合反应的动力学机理等给出了蒙特卡罗方法中所需要的不同概率,通过在CUDA平台上并行的执行蒙特卡罗方法,最终得到所需要的序列分布。由于整个计算过程并行度较高,从而使得计算时间大幅度缩短,因此称为快速序列分布计算技术。
【专利说明】一种基于CUDA的稳态烯烃共聚快速序列分布计算方法

【技术领域】
[0001]本发明涉及基于CUDA平台下的高分子共聚稳态过程中的快速序列分布计算技术方法。

【背景技术】
[0002]随机数生成器,是指的能够生成随机数的函数或者程序模块。在连续型随机变量的分布中,最简单而且最基本的分布是单位均匀分布,由该分布抽取的简单子样称为随机数序列,其中每一个个体称为随机数。独立性、均匀性是随机数必备的两个特点。包括蒙特卡罗计算方法在内的大多数算法都要求所采用的随机数序列服从均匀分布,即同一范围内的任一个数出现的概率相同。
[0003]蒙特卡罗方法,也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。该方法使用随机数(或更常见的伪随机数)来解决很多计算问题,与它对应的是确定性算法。蒙特卡罗方法在化工领域已经得到认可和应用。在给定动力学机理的情况下,根据共聚系统稳态的各个状态值来计算出不同反应类型的概率;其次,设定的共聚体系中存在的分子链的数目,并进一步根据随机数生成器所生成的一系列随机数来重复的判定反应中各条链的反应情况,直到整个系统中的所有链都终止了为止。
[0004]统一计算设备架构(CUDA),是显卡产商NVIDIA推出的运算平台,是一种通用并行计算架构。由于它包含了指令集架构以及并行计算引擎,因此能够解决很多复杂的计算问题,并且大幅度的缩短计算时间,计算效率得到明显的提升。序列分布,是指不同种类单体构成的序列在分子链中出现频率的一类分布。在高分子化学领域,聚合物的性能指标包括常见的熔融指数、平均分子量、分子量分布,然而在共聚体系中这些指标并不能完全的描述聚合物的性能,除了严格的交替共聚和嵌段共聚外,同一个大分子内各个单体的排列是不规则的,因此就存在着链段的序列分布。


【发明内容】

[0005]本发明的目的是针对稳态烯烃共聚体系中自由基聚合反应的应用场景,提供一种基于CUDA的稳态烯烃共聚快速序列分布计算方法。
[0006]本发明的技术方案如下:
[0007]基于CUDA的稳态烯烃共聚快速序列分布计算方法包括如下步骤:
[0008]a.读取稳态烯烃共聚体系的状态值,包括链增长、链转移、链终止反应的动力学常数以及各类单体、链转移剂、链终止剂的浓度;
[0009]b.计算蒙特卡罗方法所需要的各个概率值,包括以各类单体结尾的活性链发生链增长反应的概率Pi以及以各类单体结尾的活性链向各类单体链增长的概率Pu,以各类单体结尾的活性链发生链增长反应的概率即将各类单体结尾的链增长化学反应速率乘以相应单体的浓度之后的加和,除以各类单体结尾的链增长、链转移、链终止化学反应速率乘以相应单体的浓度之后的加和,以各类单体结尾的活性链向各类单体链增长的概率即将向各类单体链增长化学反应速率乘以对应单体的浓度,除以各类单体结尾的链增长化学反应速率乘以相应单体的浓度之后的加和;以公式表示:
[0010]

【权利要求】
1.一种基于CUDA的稳态烯烃共聚快速序列分布计算方法,其特征在于包括如下步骤: a.读取稳态烯烃共聚体系的状态值,包括链增长、链转移、链终止反应的动力学常数以及各类单体、链转移剂、链终止剂的浓度; b.计算蒙特卡罗方法所需要的各个概率值,包括以各类单体结尾的活性链发生链增长反应的概率Pi以及以各类单体结尾的活性链向各类单体链增长的概率Pij:

R1,: P —_H_
'Rpi + Rti + Kii
k..[/I
P _PU L-, J Σο]
m 其中,Rpi表示聚合反应中以单体i结尾的活性链链增长速率;Rti表示以单体i结尾的活性链链转移速率;Rdi表示以单体i结尾的活性链链终止速率;[j]、[m]分别表示单体j、单体m的浓度;kpU、kpim分别表示以单体i结尾的活性链向单体j、单体m发生链增长的化学反应速率; c.将步骤b计算得到的概率值从CPU平台传递到CUDA平台上; d.在CUDA平台上开辟用于记录序列信息的存储空间以及数目等于模拟总链数的线程数; e.并行的执行所有线程,在每个线程里依靠步骤b中得到的概率,顺序地判断相应活性链是否发生链增长;若否,停止该线程的模拟计算并将得到的序列信息按线程编号在存储空间中进行存储;若是,则继续进行判断向哪一类单体进行链增长并记录对应的序列信息; f.重复步骤e,直到获得停止信息并退出; g.将记录的序列信息从CUDA平台传递到CPU平台上; h.统计所有的序列信息,得到所需要的序列分布。
2.根据权利要求1所述的一种基于CUDA的稳态烯烃共聚快速序列分布计算方法,其特征在于步骤b中所述的蒙特卡罗方法的模拟平台为CUDA。
3.根据权利要求1所述的一种基于CUDA的稳态烯烃共聚快速序列分布计算方法,其特征在于步骤b中所述的蒙特卡罗方法的模拟方式为每个模拟线程都只进行一条链的模拟过程。
4.根据权利要求1所述的一种基于CUDA的稳态烯烃共聚快速序列分布计算方法,其特征在于步骤b中所述的蒙特卡罗方法的模拟顺序为并行的执行多个蒙特卡罗模拟线程。
5.根据权利要求1所述的一种基于CUDA的稳态烯烃共聚快速序列分布计算方法,其特征在于步骤e中所述的记录信息为链中所有的序列信息。
【文档编号】G06F19/00GK104166783SQ201410324525
【公开日】2014年11月26日 申请日期:2014年7月9日 优先权日:2014年7月9日
【发明者】陈曦, 翁金祖, 姚臻 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1