计算化学公社

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

[ORCA] 简单的交互式脚本将gjf文件批量转化为ORCA的inp文件

[复制链接 Copy URL]

43

帖子

0

威望

551

eV
积分
594

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 Tanghaoru 于 2026-2-7 23:47 编辑

1 脚本介绍
“gjf_to_inp.sh”脚本是调用Multiwfn进行批量转化,可将当前文件夹中的gjf文件转化ORCA的inp输入文件。
该脚本的特点:将多个inp模板集合到一个脚本中,避免了为了多个计算任务准备多个转化脚本。每次只需要输入对应任务的数字指令就能将gjf文件转化为特定任务的inp文件。

2 运行前的准备

2.1 确定你的模板文件的位置,即把一些inp模板文件放在一个指定的文件夹中
# location of template files
TEMPLATE_DIR="/home/hao/work/template"

2.2 可自行定义选项
例如想添加一个optimization的选项,直接在echo "1) frequency"的下一行添加echo "2) optimization"。
echo "Available templates:"
echo "1) frequency"
echo ""


添加后的形式

echo "Available templates:"
echo "1) frequency"

echo "2) optimization"
echo ""

ps:可以根据自己喜好将frequency改为其他名字

2.3 可自行定义选项代表的inp文件
想在1)后添加optimization任务的模板文件,则直接将在;;后再加五行信息。
例如
case $choice in
    1)
        template_src="${TEMPLATE_DIR}/freq.inp"
        task_type="B3LYP D3 def2-SVP freq"
        task_prefix="freq"
        ;;

    *)
        echo "Invalid choice! Please select 1-10."
        exit 1
        ;;
esac



添加后为
    1)
        template_src="${TEMPLATE_DIR}/freq.inp"
        task_type="B3LYP D3 def2-SVP freq"
        task_prefix="freq"
        ;;

    2)
        template_src="${TEMPLATE_DIR}/opt.inp"
        task_type="B97-3c opt"
        task_prefix="opt"
        ;;

    *)
        echo "Invalid choice! Please select 1-10."
        exit 1
        ;;
esac


ps:task_type里的内容只是提醒当前模板下的关键词是啥;task-prefix中的内容是提醒任务的类别,这个将会影响生成的inp文件的名字。但都不影响脚本的运行,可根据喜好自行修改。template_src中的freq.inp、opt.inp得根据inp模板文件的名称进行修改,这将影响脚本调用哪个模板文件。

2.4 配置Multiwfn的路径
大概在当前脚本的第130行处,根据自己的实际路径进行修改。
  /opt/Multiwfn/Multiwfn ${inf} << EOF > /dev/null 2>&1

3 运行流程(我的运行环境为:Ubuntu-24.04, wsl)

3.1 先执行chmod +x gjf_to_inp.sh,用于添加执行权限

3.2 在命令窗口中输入
./gjf_to_inp.sh

3.3 随后窗口会出现
Available templates:
1) frequency
2) optimization

输入相应任务的数字,再输入y”,再点击 “回车键/enter”,就会最终提醒
  Conversion completed!
  Total: 2 files converted

最终相应任务的inp文件会出现在当前文件夹中。

附件中有脚本出现的相关的inp模板文件,可根据自己需要自行修改模板inp文件中的关键词。

第一次尝试写个教程,如有错误,欢迎批评指正。








gjf_to_inp.sh

3.58 KB, 下载次数 Times of downloads: 15

转化脚本

irc.inp

269 Bytes, 下载次数 Times of downloads: 5

模板

optfreq.inp

170 Bytes, 下载次数 Times of downloads: 5

模板

ts.inp

178 Bytes, 下载次数 Times of downloads: 6

模板

freq.inp

144 Bytes, 下载次数 Times of downloads: 4

模板

sp.inp

202 Bytes, 下载次数 Times of downloads: 5

模板

RS-sp.inp

118 Bytes, 下载次数 Times of downloads: 4

模板

RS-opt2.inp

155 Bytes, 下载次数 Times of downloads: 4

模板

opt.inp

139 Bytes, 下载次数 Times of downloads: 4

模板

RS-opt1.inp

154 Bytes, 下载次数 Times of downloads: 4

模板

freeze.inp

339 Bytes, 下载次数 Times of downloads: 4

模板

评分 Rate

参与人数
Participants 2
eV +11 收起 理由
Reason
SharkYYX2025 + 3 好物!
sobereva + 8

查看全部评分 View all ratings

一个做催化实验的并努力向计算转行的在读水货

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

GMT+8, 2026-2-16 20:17 , Processed in 0.171354 second(s), 26 queries , Gzip On.

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