Skip to content

v0.4.2 - Complete Next Panel Basis Tail Extraction Fix

Choose a tag to compare

@cfx2020 cfx2020 released this 02 Apr 06:51
· 32 commits to main since this release

Gaussian Copilot v0.4.2

紧急修复版本:0.4.1 发布时遗漏了核心的 Next 面板基组继承修复代码。本版本包含完整的修复。

🔧 Next 面板基组赝势修复(完整版)

  • 问题描述:

    • 当用户从含有 gen/genecp 自定义基组的 Gaussian log 文件中,通过 Next 面板的按钮(如"从当前帧进行TS过渡态搜索")生成新的 gjf 文件时:
    • f 轨道基组壳层(如 f 1 1.00)被正确继承
    • 但 d 轨道基组壳层(如 d 1 1.00)被误删除,导致新 gjf 缺少 d 轨道设定
  • 根本原因:

    • 基组尾部提取逻辑中的 looksLikeModredundantLine() 函数用规则 /^\s*[BADXL]\s+\d+/i 判断 ModRedundant 约束行
    • 该正则表达式意在匹配约束定义(如 B 4 5 F、D 1 2 F),但会误匹配基组壳层头(d 1 1.00 中首字母 d)
    • 结果导致所有以 B/D/A/X/L 开头的行被过滤,包括合法的 d/p 基组壳层定义
  • 修复方案:

    • 改进 looksLikeModredundantLine() 的判定逻辑:
      • 增加"基组壳层头"正则识别:/^[A-Za-z]{1,2}\s+\d+\s+[-+]?\d*\.?\d+(?:[DdEe][-+]?\d+)?\s*$/
      • 匹配模式(角动量字母 + 原始基组数 + 指数值)的形式,如 d/p/sp 等
      • 优先检测并排除壳层头,再检测 ModRedundant 约束
    • 确保合法的基组定义行(d 1 1.00、p 2 1.5 等)不被误判为约束行
  • 影响范围:

    • 所有使用 gen/genecp 自定义基组(特别是含有 Pd、I 等金属及重原子时的赝势)的分子
    • 通过 Next 面板生成的 TS、Sol、IRC 计算输入文件

测试确认

  • 验证信息:与提供的 4a-ts3-1-fix.log 和 4a-ts3-1-fix.gjf 对比
    • 原文件含 Pd(lanl2dz)和 I(自定义 d/f 指数)的赝势定义
    • 修复后可正确保留 d 轨道指数、p 轨道等所有壳层定义