用高斯计算磷光发射能
一、磷光产生的原理
磷光的产生原理同样可用以下Jablonski能级图来描述。分子吸收电磁辐射后处于激发态,若S1的振动能级与T1的振动能级重叠,则可能发生系间窜跃(intersystem crossing, ISC),从S1态进入T1态。这是一个自旋禁阻的过程,之所以能发生,是因为存在自旋−轨道耦合(spin-orbital coupling, SOC),轨道运动产生的磁场对电子自旋施加一个扭矩而使自旋反转。从T1态再以发光方式跃迁至S0,自旋再次反转,这种发光便为磷光。
由于跃迁过程中自旋禁阻,因此磷光的寿命要比荧光长很多,从毫秒级别到几小时都有可能。因此将激发光从样品移走后,还可以观察到后发光现象,而荧光则观察不到。
二、计算实例
磷光计算原则上来说需要考虑旋轨耦合,但是目前高斯还不支持。在免费的程序中,可以使用Dalton来进行计算,可参见《Dalton使用——磷光及其相关过程》一文。此外,beefly老师曾在计算化学公社分享过很详细的使用Dalton计算荧光和磷光的教程,链接为
http://bbs.keinsci.com/thread-2455-1-1.html
本文中,我们用高斯来计算磷光,不考虑旋轨耦合。以下以吡啶分子在乙醇中的磷光计算为例,展示磷光的计算方法。在《第一激发三重态的几何结构优化》一文中我们已经谈过关于T1的结构优化,本文均使用UDFT的方式来优化T1的结构。此外,本文中略去吸收过程的计算,其计算可参考《荧光光谱的理论计算》一文。
1. 使用线性响应模型计算
(1)优化T1的结构
%chk=pyidine.chk
#p opt freq upbe1pbe/6-311G(d,p) scrf(solvent=ethanol)
Title Card Required
0 3
C -1.22728700 -0.72847200 -0.25006100
C -1.21887400 0.64316100 -0.01006100
C -0.00000700 1.36922700 0.13999700
C 1.21885300 0.64318200 -0.00971200
C 1.22730900 -0.72845700 -0.24973000
N 0.00000800 -1.31922500 0.41943100
H -0.00001400 2.45072700 -0.02971200
H -2.11074200 -1.35208900 -0.58002100
H -2.17958700 1.14805300 -0.09002400
H 2.17955700 1.14809300 -0.08940600
H 2.11077300 -1.35205800 -0.57945400
注意:吡啶分子的T1态是非平面结构,在优化时需要调整初始结构,否则会优化出有虚频的平面结构。
得到发射能的方法有如下两种:
方法一:
(2)对上一步优化得到的结构做TD(triplet)计算:
%chk=pyridine.chk
#p pbe1pbe/6-311G(d,p) td(triplet) scrf(solvent=ethanol) geom=check
td
0 1
取这一步的激发能,即可作为磷光的发射能,结果为1.87 eV。
方法二:
(2)在T1的结构上做基态计算:
%chk=pyridine.chk
#p pbe1pbe/6-311G(d,p) scrf(solvent=ethanol) geom=check
td
0 1
用结构优化最后的能量与基态能量相减,得发射能为2.13 eV。
2. 使用态特定模型计算
(1)在T1的平衡结构下做TD计算,得到激发态的能量,并将溶剂信息写入chk文件:
%chk=pyridine.chk
#p pbe1pbe/6-311G(d,p) td(triplet) scrf(solvent=ethanol,externaliteration,noneq=write) geom=check
td
0 1
(2)在T1的平衡结构上下做基态计算,读入上一步的溶剂信息,得到非平衡溶剂下的基态能量:
%chk=pyridine.chk
#p pbe1pbe/6-311G(d,p) scrf(solvent=ethanol,noneq=read) geom=check
td
0 1
取第(1)步的After PCM corrections后面的能量与第(2)步的SCF Done后面的能量相减,得发射能,结果为1.72 eV。
需要注意的是,由于自旋禁阻,振子强度总是0,因此用高斯计算出的结果是无法绘制光谱图的。
- 深入入门系列--Data Structure--04树
- SQL学习之高级联结(自联结、自然联结、外联接)
- ExtJs学习笔记(21)-使用XTemplate结合WCF显示数据
- JavaScript之面向对象的概念,对象属性和对象属性的特性简介
- 快速入门系列--WebAPI--04在老版本MVC4下的调整
- SQL学习之SELECT子句顺序
- [图解]sqlserver中创建链接服务器
- 人工智能时代来临,还在炫耀孩子能考100分?
- 2017:谷歌DeepMind团队的年度回顾
- SQL学习之组合查询(UNION)
- 微信小程序版2048小游戏(附源码)
- SQL学习之去重复查询
- SQL学习之学会使用子查询
- MySQL快速入门
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Docker安装harbor仓库、更改端口、跨服务器访问
- 字符串处理算法题 -> 替换空格
- 简单二分法查找
- 链表之Python与C
- Python MQTT
- 从键盘输入一个十进制个位数,在屏幕上显示相应数量的该数。 例如,输入3,屏幕上将显示“333”。
- ESP32 OTA详解-中文翻译版
- 汇编语言从键盘输入一个字符串(串长不大于80)以十进制输出字符串中非字母字符的个数(不是a to z或 A to Z)
- 求100以内所有奇数的和,存于字变量X中。
- pyinstaller打包出错numpy.core.multiarray failed to import
- 从包含10个无符号数的字节数组array中选出最小的一个数存于变量MIN中,并将该数以十进制形式显示出来。
- 可修改内容的优先级队列
- STM32定时器与中断整理
- 计算CNN卷积神经网络中各层的参数数量「附代码」
- C++ 万字长文第一篇---拿下字节面试