Repository navigation
[2026-10-10] 同步参考库 10-10 改动:自由能目录带步骤号 & US 窗口规则②重写
✨ 新增
- 新建项目(
new_project.sh --with-free-energy)里自由能四目录带步骤号:2smd/3extract/4us/5pmf,和2min/3eq/4prod对齐看;库里模板保持不编号(自由能四步是步骤 5 的子步骤) - 生成时自动改写脚本内部的兄弟目录引用(
../smd/→../2smd/、../us/→../4us/,注释里的us/windows.txt、pmf/wham.py一起改),并自检每个../xxx/是否都指到已建目录 —— 实测 5 个文件、10 行引用被改写,自检通过 - 只加
--with-free-energy时不再建空的2min/3eq:最小化+平衡本来就在2smd/eq.conf里(minimize 5000+ 1 ns NVT),产物eq_output.coor/.vel/.xsc直接交给 SMD 续跑;建空目录只会让人以为漏跑步骤 new_project.sh的usage()改用 awk 打印头部注释,以后加注释不会再错位
🔧 修复
- 并行参数在「不绑核」时命令行多出一个双空格(
+p16 +devices 0→+p16 +devices 0)—— 这是用户会照着抄的命令,显示要干净 - 改名器里写死的
"/mnt/share"判据换成通用判断(行内出现绝对路径就整行跳过),行为不变,但库里不再残留任何外来路径
📖 规则说明
- US 窗口清单规则②重写:从「弹簧常数必须统一」改为「混用弹簧可以,但每个接头都要验算重叠」。必要判据是相邻两窗 ±3σ 相交(
Δz ≤ 3(σi+σj),σ = sqrt(RT/k)),但判据过了不代表采得到 —— 要按实测直方图数空隙区每 0.01 Å bin 还剩几个样本(≳5 才算稳) - 实测反例(CNT5,2026-10-10):孔区 k=50(σ=0.11) 接体相 k=10(σ=0.245)、间距 1.0 Å 时,±3σ 判据报「余量 6%、刚过」,但空隙区每 bin 只剩 1.6 个样本 → 约 40% 概率冒 1 个 NaN;改成 k=5(σ=0.346) + 间距 1.5 Å 后最薄接头 9.4 样本/bin,而且 5 个窗口就覆盖 +6~+12(比 k=10/步长 1.0 的 7 个更省)
windows_bulk_to_tube.txt的「已知脆弱点」补上同一条教训(那份 47 窗口方案正是强/弱弹簧混用的典型)- 新增「版本号先问」铁律(
AGENTS.md§7):动手改库前先确认目标版本号,收尾更新VERSION+ 写台账 + 给 Release title/note
📦 涉及文件
- 修改:
new_project.sh、free_energy/us/windows.txt、free_energy/us/windows_bulk_to_tube.txt、README.md、free_energy/README.md、WORKFLOW.md、AGENTS.md、VERSION(0.1.0→1.3.0)、bench_namd.sh、free_energy/us/run_all.sh、free_energy/smd/run_smd.sh、logs/CHANGELOG.md - 未动:
../WORKFLOW(参考库,只读);上游自己的logs/CHANGELOG.md不复制(各记各的台账)