0%

Gaussian + Multiwfn 绘制 NMR 谱

前言

水杨酸(Salicylic acid)是一种植物激素,可调节植物的生长发育,在有机合成中十分重要。由于水杨酸特殊的结构,导致了内氢键的形成,所以水杨酸可能存在着两种构象,分别对应于下图中的 Structure 1 和 Structure 2。为了节省时间,本文只对水杨酸的 Structure 1 进行了研究。本文涉及到的 NMR 计算数据都是在 Rocky Linux 8.8 下使用 Gaussian 16 A.03 计算得到的,使用 Multiwfn 3.8(dev) 处理 NMR 数据,并绘制了 NMR 谱。

本文主要参考了计算化学公社社长 Sob 老师有关 NMR 计算的相关文章:

Sob 老师在其文章中提到,较为精确计算 NMR 主要有两种方法,分别为常规法和标度法。下面分别介绍这两种方法计算水杨酸的 1H-NMR 并且使用 Multiwfn 处理 Gaussian 输出的 NMR 数据,从而得到较为精确的 NMR 化学位移。

常规方法计算 1H-NMR

使用常规方法计算 1H-NMR 的思路就是在同一计算级别下分别计算 TMS 和水杨酸的 1H 的磁屏蔽值,然后以 TMS 的 1H 的磁屏蔽值为基准,对水杨酸的 1H 的磁屏蔽值进行处理,就可以得到相对精确的 1H-NMR 化学位移。于是笔者首先将 TMS 和 水杨酸在水溶液模型下使用 B3LYP/6-31G* 这个组合做几何优化和振动分析之后,接着再在 revTPSS/pcSseg-1 级别下结合水溶液环境做 NMR 计算。

之所以使用 revTPSS/pcSseg-1 这个组合,在 Sob 老师《revTPSS 泛函结合 pcSseg-1 基组是计算 NMR 很好的选择》一文中有着详细的解释。与 Sob 老师博文中不同的是,本文所介绍的例子是在 IEFPCM 水溶液模型下计算的,可能并没有在氯仿溶剂模型下计算这么精准。

值得注意的是 revTPSS 在 Gaussian 中要写成 revTPSSrevTPSS,pcSseg 基组在 Gaussian 16 中没有内置,需要自行从 Basis Set Exchange (BSE) 基组数据库中拷定义来使用,以下是计算 NMR 的输入文件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# nmr revTPSSrevTPSS/gen scrf(solvent=water)

Normal NMR Salicylic acid

0 1
O 2.37327100 0.95290000 0.00000000
C 1.09512700 1.37960000 0.00000000
O 0.87038200 2.57760300 0.00000000
C 0.00000000 0.35820300 0.00000000
C -1.32088900 0.83735100 0.00000000
C -2.40963000 -0.02584900 0.00000000
C -2.18878500 -1.40733000 0.00000000
C -0.89175600 -1.91395300 0.00000000
C 0.19751600 -1.03881900 0.00000000
O 1.48404800 -1.50872800 0.00000000
H 2.40853700 -0.02771800 0.00000000
H -1.46237600 1.91254600 0.00000000
H -3.42057500 0.36878700 0.00000000
H -3.02824300 -2.09643500 0.00000000
H -0.71646200 -2.98652600 0.00000000
H 1.50802600 -2.48007300 0.00000000

H 0
S 3 1.00
0.122518D+02 0.233371D-01
0.186871D+01 0.159150D+00
0.418208D+00 0.500000D+00
S 1 1.00
0.106100D+00 1.0000000
P 1 1.00
0.100000D+01 1.0000000
****
C 0
S 5 1.00
0.124320D+04 0.603366D-02
0.187145D+03 0.449576D-01
0.425126D+02 0.197901D+00
0.117393D+02 0.500000D+00
0.350548D+01 0.480364D+00
S 2 1.00
0.539089D+01 -0.703980D-01
0.493341D+00 0.500000D+00
S 1 1.00
0.149741D+00 1.0000000
P 3 1.00
0.918056D+01 0.431701D-01
0.193658D+01 0.224999D+00
0.526296D+00 0.500000D+00
P 1 1.00
0.136319D+00 1.0000000
D 1 1.00
0.800000D+00 1.0000000
****
O 0
S 5 1.00
0.228864D+04 0.585468D-02
0.344416D+03 0.437333D-01
0.782538D+02 0.194796D+00
0.217195D+02 0.500000D+00
0.655907D+01 0.484614D+00
S 2 1.00
0.104656D+02 -0.713343D-01
0.964351D+00 0.500000D+00
S 1 1.00
0.285127D+00 1.0000000
P 3 1.00
0.170590D+02 0.474439D-01
0.368999D+01 0.242689D+00
0.992996D+00 0.500000D+00
P 1 1.00
0.244924D+00 1.0000000
D 1 1.00
0.100000D+01 1.0000000
****

根据这种思路,计算完 TMS 的 NMR 后,可以在 GaussView 的 result 中的 NMR 中查看 TMS 的 1H 的磁屏蔽值。也可以在 Gaussian 的输出文件中查看。从这两个地方可以知道参考物质,也就是 TMS 的 1H 的磁屏蔽值 为 31.7130 ppm请记住这个数值!

1
3  H    Isotropic =    31.7130   Anisotropy =     9.4865

接着启动 Multiwfn,并将 Gaussian 计算水杨酸 NMR 的输出文件载入 Multiwfn 中,接着输入:

1
2
3
4
5
6
7
8
11          // 绘制光谱
7 // NMR
6 // 选择需要绘制的元素
H // 选择 H 谱
7 // 选择确定化学位移的方式
1 // 输入参考值
31.7130 // 输入水溶液下 TMS 的磁屏蔽值
-2 // 保存 NMR 数据

保存之后,则会在当前目录下输出 NMRdata.txt,内容如下,其中 Shielding(iso) 就是 Gaussian 输出文件里的原子的磁屏蔽值。

1
2
3
4
5
6
7
8
9
Note: The data shown below are in ppm

Atom Shielding(iso) Chemical Shift
11(H ) 21.658 10.055
12(H ) 23.808 7.905
13(H ) 24.749 6.964
14(H ) 24.374 7.339
15(H ) 24.971 6.742
16(H ) 26.032 5.681

同时可以使用 Multiwfn 继续处理 NMR 数据,比如使用洛伦兹函数对 NMR 谱进行展宽,在之前的操作下接着输入:

1
2
3
4
8           // 设置 FWHM
0.08 // 设置为 0.08 ppm
2 // 导出坐标数据,以方便后续的绘图
1 // 保存 NMR 谱图

使用 Multiwfn 导出坐标数据之后,会在当前目录生成 NMR_curve.txtNMR_line.txt 文件。可以选择使用 Origin 这种绘图软件导入坐标数据绘制 NMR 谱,也可以使用 Multiwfn 自带的绘制光谱功能。

标度法计算 1H-NMR

根据 Sob 老师在其博文《谈谈如何又好又快地计算 NMR 化学位移》中的介绍,标度法是用来计算化学位移的一种又准又便宜的方法。其核心思想是使用统计学的方法将计算得到的 NMR 通过某些矫正因子矫正,这个矫正因子通过统计学的方法拟合得到。不同文献报道了不同级别、不同方式得到标度参数,在 Chemical Shift Repository 中的 Scaling Factors 目录下有汇总。由于本文需要计算水溶液环境下的 NMR,所以在网站中找到带有 Water 的目录,即为 Table #5 - Water 表格。

从表格中可以看到,使用 B3LYP/6-31+G** 在气象下进行几何优化后,再使用 B3LYP/6-311+G(2d,p) 在水溶剂下进行 NMR 计算的 RMSD 非常小,只有 0.1303。所以可以在这两个级别下分别做优化和 NMR 任务,然后使用 Multiwfn 处理数据,就可以使用标度法得到比较精确的化学位移。启动 Multiwfn,载入上述任务得到的 NMR 输出文件,并输入:

1
2
3
4
5
6
7
8
11                  // 绘制光谱
7 // NMR
6 // 选择需要绘制的元素
H // 选择 H 谱
7 // 选择确定化学位移的方式
2 // 设置标度法的斜率和截距
-1.0507,31.9181 // 用于 1H NMR 的斜率和截距。
-2 // 保存 NMR 数据

同样,保存之后会在当前目录下输出 NMRdata.txt,内容如下:

1
2
3
4
5
6
7
8
9
Note: The data shown below are in ppm

Atom Shielding(iso) Chemical Shift
11(H ) 21.708 9.717
12(H ) 23.288 8.213
13(H ) 24.415 7.141
14(H ) 23.917 7.615
15(H ) 24.599 6.966
16(H ) 26.333 5.316

此体系有现成的水溶液下的实验 NMR 谱。为了对比水杨酸水溶液在常规法、标度法的计算结果和实验结果的区别,笔者绘制了下表。

可以看见使用常规法,即使用 B3LYP/6-31G* 做几何优化后使用 revTPSS/pcSseg-1 级别计算 NMR 任务得到的化学位移还是相当接近实验的,仅仅只有一点点的误差。但是标度法得到的结果却有点差强人意了,除了 Ha 拟合得非常好,Hb 和 Hd 都差了很多。这些误差是因为实际上的水杨酸肯定存在不止一种构象,并且由于氢键的存在,还可能存在二聚体、团簇等多种情况,这些都会影响氢的化学位移。

同时,实验的 1H-NMR 没有提供羟基和羧基上活泼氢的化学位移,这是因为这个 NMR 实验是在重水中测的,水杨酸中的羧基和羟基的活泼氢会被氘取代,这些氢是没有 NMR 信号的。

考虑构象权重的 1H-NMR

《Gaussian + orca + xtb + molclus 对阿司匹林做构象搜索》一文中,笔者计算得到了阿司匹林(Aspirin)的构象分布比例。Multiwfn 可以绘制各个构象以及构象权重平均的NMR谱,笔者将绘制阿司匹林构象权重的 1H-NMR 谱。笔者将使用常规方法对阿司匹林最主要的三个构象计算 NMR,为了绘制构象权重的 NMR 谱,需要创建一个含有每个构象 NMR 任务输出文件的文本文件,里面也写上构象的权重(0至1之间,总和必须为1),文件名要么是 multiple.txt,要么末尾是 _multiple.txt。比如创建一个名为 Aspirin_multiple.txt,内容如下:

1
2
3
cluster1_NMR.out 0.5478
cluster2_NMR.out 0.2835
cluster3_NMR.out 0.1687

启动 Multiwfn 载入 Aspirin_multiple.txt 后输入:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
11          // 绘制光谱
7 // NMR
6 // 设置被考虑的元素
H // 氢
7 // 设置化学位移的计算方式
1 // 设置参考值
31.7130 // 来自 TMS.out
10 // 化学等价原子取平均
18-20 // 另一个甲基上的三个氢的序号
11 // 设置某些原子的强度值
21 // 羧基 H 的序号
0 // 强度设为 0,即它们在谱图中将不可见
3 // 修改横坐标范围
10,0,1 // 范围从 100,每 0.5 ppm绘制一个标签
12 // 不显示竖线以使得图像更简洁
18 // 其它绘图设定
5 // 设置图例的横坐标位置
1300 // 让图例的横坐标位置比默认的更靠左。默认值是2200,数值越小就越靠左
0 // 返回
-2 // 保存 NMR 数据

得到的加权之后的数据为可以在当前目录下的 NMRdata.txt 文件中看见构象加权之后的的 1H-NMR 化学位移。

1
2
3
4
5
6
7
8
9
10
Weighted data:
Atom Shielding(iso) Chemical Shift
14(H ) 24.584 7.129
15(H ) 23.938 7.775
16(H ) 24.203 7.510
17(H ) 24.407 7.306
18(H ) 29.365 2.348
19(H ) 29.365 2.348
20(H ) 29.365 2.348
21(H ) 23.081 8.632

如果想只绘制构象加权之后的 NMR 谱,可以接着输入:

1
2
3
4
5
6
7
8
9
17          // 更改光谱设置
2 // 只显示加权光谱
14 // 设置颜色
-2 // 设置曲线颜色
16 // 将曲线设置为粉色
-1 // 设置直线颜色
16 // 将曲线设置为粉色
0 // 返回
1 // 保存 NMR 谱图

此时就得到了根据构象加权的 1H-NMR 谱,如下图所示。

阿司匹林也有现成的实验谱,通过对比实验谱,可以发现计算的结果还是相当接近实验的。

  • 本文作者: Hsiun YuBin
  • 本文链接: https://ikuns.icu/013/
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!