目录

溶剂筛选:共沸溶剂筛选

一、需要的文件与数据

共沸、饱和蒸汽压等性质的计算,需要 *.coskf 文件以及蒸汽压方程中的 'Antoine'或'VPM1' 参数,这两种参数只能通过查阅相关数据库得到,如果实在没有,可以在 COSMO-RS 模块的图形窗口中,使用 QSPR 应用定量构效关系经验性地猜测:

SCM → COSMO-RS → Compounds → Add Compounds,添加生成的 *.coskf 文件。然后如下图所示,选中该化合物,右侧点击 Estimate 按钮即可:

在脚本中体现为(这部分的使用见下文):

Ethanol={ 
'name':'Ethanol',
'coskf':'Ethanol.coskf',
'vp_eq':'VPM1',
'vp_para':[-7817.57624223014, -10.64422136014045, 0.005430869892407646, 82.94275538593995, 0.0],
'vp_T_range':[np.nan,np.nan],  
'vp_ref':'QSPR'
}

*.coskf 的生成,参考教程:如何准备*.coskf文件、生成表面电荷分布图

二、使用流程

脚本点击下载,解压后得到一个脚本与一个文件夹(注意文件的完整路径中不可含中文、空格),文件夹中存放的是生成的 *.coskf 文件。AMSJobs 窗口进入该文件夹,然后菜单栏 Help → Command-Line 打开命令行,输入 sh 回车,然后输入

amspython example_azeotrope.py

回车即可输出结果:

三、脚本中的参数讲解

注意脚本中#以后的内容表示注释,不执行、没有格式要求。Python脚本的编辑,可以参考:Python脚本的编辑

溶质与溶剂的指定

在 Python 脚本中,溶剂、溶质(含 'Antoine'或'VPM1' 参数)的定义是依靠以下方式定义的,这里定义了三种分子,其中一种是溶质,两种是溶剂,用户需要筛选的溶剂分子,类似以类似格式增加即可(在这里并未区分谁是溶质,谁是溶剂):

Ethanol={
        'name':'Ethanol',
        'coskf':'Ethanol.coskf',
        'vp_eq':'Antoine',         #Antoine or VPM1
        'vp_para':[5.0649993,1506.8189825,-53.6512210],
        'vp_T_range':[270.31,513.92],
        'vp_ref':'SCM'
}
 
Water={ 
        'name':'Water',
        'coskf':'Water.coskf',
        'vp_eq':'Antoine',
        'vp_para':[4.6543,1435.264,-64.848],
        'vp_T_range':[255.9,373],
        'vp_ref':'NIST'
      }
 
Butanol={
        'name':'1-Butanol',
        'coskf':'1-Butanol.coskf',
        'vp_eq':'Antoine',
        'vp_para':[4.54607,1351.555,-93.34],
        'vp_T_range':[295.8,391],
        'vp_ref':'NIST'
}

其中vp_T_range指的是Antonie方程的温度范围,当需要外推法时,结果应谨慎使用。

指定溶质、溶剂,是依靠下面两行:

solute_list=[Ethanol]
solvent_list=[Water,Butanol]

这里引用了上面列出的变量名字,并允许输入多个溶剂,用逗号隔开即可。

压强的指定

下面一行指定压强,目前是 1 个大气压:

cal_info['pressure']    =[1]      #specify in [P1] or [P1, P2, npstep]

计算方法的修改

该脚本中,使用这一行定义方法:

method='COSMORS'

可以替换的方法包括:

用户正式应用前,建议选择一些验证溶剂,找出对该系列化合物可靠度最高的方法,用于后续真实筛选过程。