计算化学公社

 找回密码 Forget password
 注册 Register
Views: 144|回复 Reply: 6
打印 Print 上一主题 Last thread 下一主题 Next thread

[ORCA] MOKIT向orca传递轨道时出现警告

[复制链接 Copy URL]

232

帖子

0

威望

684

eV
积分
916

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 BinWang 于 2026-1-5 15:19 编辑

各位老师:
      大家好!我用MOKIT将orca计算好的*.gbw轨道转化为局域配对UNO轨道,过程是先将*.gbw转为*fch,之后利用MOKIT读入。所有操作过程中都用的时全电子基组x2c-TZVPall,不涉及雁势。MOKIT输入文件如下:
1 %mem=360GB
  2 %nprocshared=64
  3 #p CASSCF/x2c-TZVPall
  4
  5 mokit{X2C,HFonly,readuhf=Sig.fch,ist=1}
  6
  7 1 3
  8 Ir                 5.36500000    8.21116300   10.13060500
  9 S                  3.52078000    9.84962100    6.35173200
10 S                  5.79853600    7.94324900   14.61335800
。。。。。坐标省略,不到两分钟结束。之后将产生的局域配对UNO轨道*fch转化为*gbw,利用orca进行CASSCF计算,MOKIT计算出来的局域配对UNO轨道看着很合理,既能反应双自由基性质,也能显示出Ir的d轨道。出现警告。我的orca输入文件如下:
! X2C X2C-TZVPall TightSCF UNO UCO   # 第1行:计算指令
%pal                                   # 第2行:并行设置
nprocs 32                             # 第3行
end                                    # 第4行:正确闭合%pal
%maxcore 6000                         # 第5行:单行指令(无end!)
%scf                                   # 第6行:SCF参数块
MOInp "sig_uno_asrot_o.gbw"                 # 第7行
Guess MORead
UHFNO true
rotate
{159,223,90}
{194,222,90}
{196,221,90}
{197,220,90}
{189,219,90}
{193,218,90}
{239,226,90}
{261,227,90}
{260,228,90}
{256,229,90}
{252,230,90}
{253,231,90}
end


end
%casscf
  nel 14
  norb 14
  mult 1,3
  nroots 1,1
# weights 0.5, 0.5
  maxiter 150
  rel
  dosoc true
  end
  PrintLevel 4
end


%cpcm smd true
       SMDsolvent "water"
end
%basis                                 # 第12行:基组设置
   NewGTO Ir "X2C-TZVPall" end          # 第13行
end                                    # 第14行
*xyzfile 1 3 geo.xyz                   # 第15行:分子坐标文件


输出的警告如下
.......前面雷同,省略
2                                         WARNING
1243 Check your MOs and check whether a frozen core calculation is appropriate
1244 MO 198 should be a S  p semi-core orbital but seems to be delocalized with a C  p orbital (89.8% vs.  6.6%)
1245 ================================================================================
1246 ================================================================================
1247                                         WARNING
1248 Check your MOs and check whether a frozen core calculation is appropriate
1249 MO 199 should be a S  p semi-core orbital but seems to be delocalized with a C  p orbital (89.9% vs.  6.6%)
1250 ================================================================================
1251 ================================================================================
1252                                         WARNING
1253 Number of found core plus semi-core electrons (126) does not match given
1254 number of chemical core plus semi-core electrons (168)
1255
1256 This might be due to poorly localized semi-core orbitals.
1257 Check the population analysis in case of doubts.
1258 Cannot correct the semi-core orbital ordering! Continue without further checks.
1259 ================================================================================
1260              **** ENERGY FILE WAS UPDATED (Diradical.en.tmp) ****



232

帖子

0

威望

684

eV
积分
916

Level 4 (黑子)

7#
 楼主 Author| 发表于 Post on 2026-1-6 10:24:31 | 只看该作者 Only view this author
zjxitcc 发表于 2026-1-6 10:20
您又引入了新的歧义关键词。UHF有两套轨道;UNO、局域配对UNO、CASSCF都是只有一套轨道。因此局域配对UNO ...

非常感谢邹老师!我尽快加群

232

帖子

0

威望

684

eV
积分
916

Level 4 (黑子)

6#
 楼主 Author| 发表于 Post on 2026-1-6 10:21:20 | 只看该作者 Only view this author
本帖最后由 BinWang 于 2026-1-6 10:23 编辑
BinWang 发表于 2026-1-5 20:56
邹老师您好!
      我将*gbw文件利用orca_2mkl转化为mkl,之后将mkl转为fch文件。这一步严格按照您的建 ...

目前我能确定的是读入的局域UNO轨道的格式有问题,用orca自己产生的轨道能够正常读入,也能旋转。局域UNO轨道关闭rotate,读入也出现了报错:
  ---------------------
INITIAL GUESS: MOREAD
---------------------
Guess MOs are being read from file: Diradical_uno_asrot_o.gbw
Input Geometry matches current geometry (good)
Input basis set is compatible with but different from current basis
RHF/CASSCF Occupation numbers from the input are taken because of NoIter
MOs were renormalized
MOs were reorthogonalized (Cholesky)

ORCA finished by error termination in GUESS
Calling Command: mpirun -np 32  /public/home/wk/soft/orca610/bin/orca_guess_mpi Diradical.gbw Diradical
[file orca_tools/qcmsg.cpp, line 394]:
  .... aborting the run

4279

帖子

4

威望

9473

eV
积分
13832

Level 6 (一方通行)

MOKIT开发者

5#
发表于 Post on 2026-1-6 10:20:17 | 只看该作者 Only view this author
本帖最后由 zjxitcc 于 2026-1-6 10:38 编辑
BinWang 发表于 2026-1-5 20:56
邹老师您好!
      我将*gbw文件利用orca_2mkl转化为mkl,之后将mkl转为fch文件。这一步严格按照您的建 ...

您又引入了新的歧义关键词。UHF有两套轨道;UNO、局域配对UNO、CASSCF都是只有一套轨道。因此局域配对UNO轨道本身就可以用于CASSCF计算,而UHF轨道本身就不能用于CASSCF计算。MOKIT产生的xxx_uhf_uno_asrot.fch文件存的是局域配对UNO,也就是说这个fch文件只含1套轨道,你用fch2mkl小程序产生.mkl文件,还是只包含1套轨道。当然了,我们就是只需要1套轨道。

你偏要写个UHF,引入了歧义,无论是人还是程序,都无法理解你此时是什么意思、想做什么,建议您加群470745084提问,不要做很多没有意义的尝试。本来是一个简单速成的操作,但是您把它复杂化了很多倍。
自动做多参考态计算的程序MOKIT

232

帖子

0

威望

684

eV
积分
916

Level 4 (黑子)

4#
 楼主 Author| 发表于 Post on 2026-1-5 20:56:53 | 只看该作者 Only view this author
本帖最后由 BinWang 于 2026-1-5 21:09 编辑
zjxitcc 发表于 2026-1-5 16:04
注意以下几点:
(1)是赝势,不是雁势。
(2)mokit{readuhf='xxx_uhf.fch'}里面要写单引号。写了readrh ...

邹老师您好!
      我将*gbw文件利用orca_2mkl转化为mkl,之后将mkl转为fch文件。这一步严格按照您的建议来的。之后生成局域配对UNO轨道,输入文件如下:
  %mem=360GB
%nprocshared=64
#p CASSCF/x2c-TZVPall

mokit{X2C,HFonly,readuhf='Diradical.fch',ist=1}
此处空格。。。。
任务2min内结束。之后用fch2mkl将生成的局域配对UNO轨道转为gbw(根据这个帖子https://gitlab.com/jxzou/qcinsta ... %81%93%E7%BB%99orca)。用orca旋转该轨道时的输入文件如下:
! X2C X2C-TZVPall UHF  NoIter
%pal
  nprocs 8
end
%maxcore 6000

%scf
  MOInp "Diradical_uno_asrot_o.gbw"
  Guess MORead
  rotate
    {159,223,90} #此处是HOMO-2,活性轨道包括两个alpha-spin的HOMO(编号224,225,从0开始排序)以及此处列出的所有轨道
    {194,222,90}
    {196,221,90}
    {197,220,90}
    {189,219,90}
    {193,218,90}
    {239,226,90}  #此处是LUMO+1,224,225是HOMO
    {261,227,90}
    {260,228,90}
    {256,229,90}
  end
end
%rel PictureChange = 2 end

*xyzfile 1 3 geo.xyz


发现orca报错如下:
---------------------
INITIAL GUESS: MOREAD
---------------------
Guess MOs are being read from file: Diradical_uno_asrot_o.gbw
Input Geometry matches current geometry (good)
Input basis set is compatible with but different from current basis
RHF/CASSCF Occupation numbers from the input are taken because of NoIter
MOs were renormalized
MOs were reorthogonalized (Cholesky)

-----------------
ORBITAL ROTATIONS
-----------------
  Rotation 159(0)  223(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 194(0)  222(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 196(0)  221(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 197(0)  220(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 189(0)  219(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 193(0)  218(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 239(0)  226(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 261(0)  227(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 260(0)  228(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.
  Rotation 256(0)  229(0) cos(t)= 0.000000  sin(t)= 1.000000
  Orbital energies were swapped.

ORCA finished by error termination in GUESS
Calling Command: mpirun -np 8  /public/home/wk/soft/orca610/bin/orca_guess_mpi Diradical.gbw Diradical
[file orca_tools/qcmsg.cpp, line 394]:
  .... aborting the run

这个可能是什么原因啊?我旋转轨道的依据是将活性轨道交换到HOMO与LUMO附近,使得所有活性轨道序号连续排列,这个旋转轨道还有别的要求吗?

232

帖子

0

威望

684

eV
积分
916

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2026-1-5 16:22:23 | 只看该作者 Only view this author
zjxitcc 发表于 2026-1-5 16:04
注意以下几点:
(1)是赝势,不是雁势。
(2)mokit{readuhf='xxx_uhf.fch'}里面要写单引号。写了readrh ...

非常感谢邹老师的回复!我一定严格按照您的建议操作。

4279

帖子

4

威望

9473

eV
积分
13832

Level 6 (一方通行)

MOKIT开发者

2#
发表于 Post on 2026-1-5 16:04:18 | 只看该作者 Only view this author
本帖最后由 zjxitcc 于 2026-1-5 16:06 编辑

注意以下几点:
(1)是赝势,不是雁势。
(2)mokit{readuhf='xxx_uhf.fch'}里面要写单引号。写了readrhf/readuhf/readno关键词,底下就不需要写电荷、自旋多重度和坐标,因为一切信息都从fch文件中读取。
(3)对于你说的“用MOKIT将orca计算好的*.gbw轨道转化为局域配对UNO轨道,过程是先将*.gbw转为*fch,之后利用MOKIT读入”,合理的步骤是先使用orca_2mkl小程序将UHF任务的gbw文件转化为mkl文件(或molden文件),然后使用mkl2fch小程序将mkl文件转化为fch文件(或使用molden2fch小程序将molden文件转化为fch文件)。一开始的gbw文件必须是UHF任务,方法基组保持与后续计算一致,不要做多余的事。如果你理解了我说的,但刻意不遵循这个步骤,例如刻意不使用mkl2fch小程序,我将拒绝回答您后续的问题。
(4)ORCA输入文件中不应该写UNO UCO UHFNO true这三项。写了产生巨大歧义,我敢说你自己也读不懂这个文件。既然你已经读取一套很合理的轨道,又做了一些轨道旋转,这就定义了一套CASSCF初始轨道,此时UNO UCO UHFNO true这三项代表什么意思呢,是否会专门破坏辛苦读入的轨道,造成负作用?这个问题的答案不是我们应该去探究的,我们应该从源头上避免这个问题。
(5)不要一口气吃成胖子,写了非常多的关键词,偷懒试图在一个输入文件里搞定。最好是先写NoIter,不写TightSCF,这样不做SCF计算,调换完轨道就退出,然后把gbw转化为mkl文件,看看轨道,这样可以检验你写的rotate调换轨道是否成功,想要的轨道是否位于正确的轨道序号上。别放错了位置、调换错了轨道(例如有的人误以为ORCA从1开始计数,实际上它从0开始计数),吭哧吭哧算了半天发现源头错了。
(6)既然已经在感叹号!那一行写了基组X2C-TZVPall,又在底下写NewGTO Ir "X2C-TZVPall" end,我看不懂。写完输入文件,最好还是检查一两遍,心不能急,车没装好是不能上路的。
自动做多参考态计算的程序MOKIT

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-1-23 18:08 , Processed in 0.169261 second(s), 21 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list