5.12 standrad system 3N0Y_2FJT
从PDB网站中查看该结构具体信息
发现该体系中存在一个非标准氨基酸CSX,无二硫键
判断非标准氨基酸是否需要处理
非标准氨基酸的一些考虑:
- 该氨基酸是否是结晶所需?若是,AMBER tutorials建议将其转换为标准氨基酸”you need to modify the resulting gfp.pdb file to convert the MSE residues (selenomethionine) into the more standard MET (we intend to simulate the wild-type variant, not the mutated version needed to ensure proper crystallization)“
- 该氨基酸是否是晶体解析过程中部分操作(如X射线衍射等)的结果,如CYS的氧化。Biochemistry. 2022 Sep 26;61(20):2165–2176. 提到 ”X-ray crystallography can promote cysteine oxidation“,且有提到”The oxidized cysteines may not be biologically relevant; i.e., they can be viewed as artifacts of X-ray crystal structures. “
与师姐讨论后,决定本次操作中将CSX替换为CYS
判断离子是否需要处理
考虑:
- 离子是否与周围残基发生相互作用?
- 是否是结晶的辅助离子?
- 是否是配体发生相互作用?
计划5.13与师姐讨论后决定
3N0Y的锰离子是该加上的,2FJT的硫酸根离子需要考量
蛋白结构清洗
- # 75.2 /home/databank/zyzhou/project/D3PM/3N0Y_2FJT/2FJT
- # PDB下载2fjt.pdb
- pdb4amber -i 2fjt.pdb -o 2fjt-pdb4amber.pdb --dry --reduce
- # 文本操作:将CSX全部替换为CYS,删除CSX的OD原子
- # 文本操作:删去B链蛋白链及B链的SO4离子
- # 75.2 /home/databank/zyzhou/project/D3PM/3N0Y_2FJT/3N0Y
- # PDB下载3n0y.pdb
- pdb4amber -i 3n0y.pdb -o 3n0y-pdb4amber.pdb --dry --reduce
- # 文本操作:删去B链蛋白链及SO4离子
测试MD自动化脚本
标注解读
git上版本存在的问题
zyzhou的修改
zyzhou修改后待解决/优化的残余问题(时间关系,先以跑通流程为首要目标)
待解决问题汇总
mdp 需要进一步核对
amber_to_gmx-add_restraint.py 调试的时候输出了一大堆debug信息,后续需要从脚本中将其删除
pre_equ.py 程序运行完成后无法退出
total_control.py 自动判断每个文件夹内有哪些文件,来判断执行哪个模式(0/1)
total_control.py 后续可以让用户指定高斯优化check的间隔时间,或者根据分子量来自动赋值
单个体系,空蛋白,无二硫键,无离子,CSX替换为CYS(2FJT)
- 75.2 /home/databank/zyzhou/project/D3PM/3N0Y_2FJT/2FJT/MD-automation-main
- # 将准备好的pdb放入 该工作路径下的system1文件下
- (ambertools) dddc@SR665-V3:/home/databank/zyzhou/project/D3PM/3N0Y_2FJT/2FJT/MD-automation-main$ ls system1/
- 2fjt-pdb4amber-CYS-chainA.pdb
- # 测试总控脚本的0模式(apo)
- python total_control.py 0
- # 报错“No SDF files found in system directories.”说明总控的0模式没有跳过配体准备步骤
- # 简单修改总控脚本,测试剩余部分
- # 当输入参数为 "0" 时,跳过配体相关处理步骤(步骤1-3),直接执行体系参数生成及后续步骤(步骤4-6)
- # 再次测试发现虽然流程可以正常运行不报错,最后显示“Workflow completed successfully!”但是实际上amber_to_gmx-add_restraint.py没有任何输出,且不会生成报错信息。
- # 后面的pre_equ也没有生成报错信息
- # 检查了一下脚本,amber_to_gmx-add_restraint.py是没有考虑apo体系的情况的
- # 2025-5-13 对 amber_to_gmx-add_restraint.py 和 total_control.py 做了修改,目前执行总控脚本0模式可实现apo体系的自动准备,但是程序无法退出(master.log 输出“全部流程完成”,但是程序仍在运行)
- # CPU服务器的测试结果:
- # 75.2 /home/databank/zyzhou/project/D3PM/3N0Y_2FJT/2FJT/MD-automation-main
- # 75.2 需要调用 conda activate ambertools + source ~/.gmx2024.sh
- # GPU服务器的测试结果:
- # 75.3 /home/data/zyzhou/project/D3PM/2FJT/MD-automation-main
- # 75.3 需要调用 conda activate AmberTools25 + source ~/.gmx2024.sh
单个体系,复合物,无二硫键,一个锰离子(3N0Y)
3N0Y原配体无法高斯优化成功,去掉核苷部分可以优化成功,故先尝试把去掉核酸部分作为配体进行脚本测试。
- conda activate ambertools
- source ~/.gmx2024.sh
- 75.2 /home/databank/zyzhou/project/D3PM/test-MD-auto/3N0Y/MD-automation-main
- conda activate AmberTools25
- source ~/.gmx2024.sh
- 75.3 /home/data/zyzhou/project/D3PM/test-MD-auto/3N0Y/MD-automation-main
- 5-14 15:51 total_control.py 对于 lig_parameter_cal.py的调用有错误,已修改,可以正常提交
- # 发现高斯优化任务进行时,total_control.py 不会等待,而是继续向下执行,这显然会出错
- # 16:10 修改 total_control.py,使其能够正确调用lig_parameter_cal.py,且在高斯优化任务提交后,每间隔一段时间检查log文件,直到所有文件夹下的log文件都出现"Normal termination of Gaussian 16 ...",workflow才向下进行
- # 5-14 17:49-18:56 修改 amber_to_gmx-add_restraint.py,使其可以正确处理复合物体系
- # 5-14 19:35 75.2 (CPU服务器)跑通流程,CPU调用的有点多(占用到了80%+)
- # 5-14 19:59 75.3 (GPU服务器)跑通流程,GPU的调用存在问题,默认是0盘
多个体系
从git上hsp90-29sys里面随机选了两个体系测试
- 75.3 /home/data/zyzhou/project/D3PM/test-MD-auto/multi-sys/MD-automation-main
- # lig_parameter_cal.py 可以直接指定 其本身的路径,在这个路径里寻找文件夹进行处理
- # 修改 total_control.py,使其能够正确执行lig_parameter_cal.py(system1的上级目录运行),等待一段时间后检查log文件使其不会因为高斯需要启动时间而报错
- # 5-14 20:35 已交上任务,高斯优化进行中
- nohup python total_control-v2.py 1 &
- # 5-15 9:04 查看任务进展,发现已报错中断,原因是lig_parameter_cal.py的下一个脚本命令行有错误,需要检查
- # 5-15 21:41 发现 total_control-v2.py 路径改一下就可以解决上面这个问题,所以先测试脚本能不能进行批量处理
- # 5-15 21:11 已全部测试通过,amber_to_gmx-add_restraint.py 又做了小修改,使其能够判断金属离子,配体同时存在时,在哪里添加蛋白位置限制索引
- # 提交 pre_equ.py 进行测试
- # 5-15 23:01 pre_equ.py 测试完成,两个体系npt3正常且合理,但是程序仍然无法自动退出
- # 5-15 23:04 提交总控脚本测试
- # 5-15 23:59 总控脚本测试通过
测试体系准备
空蛋白,无二硫键,无离子,CSX替换为CYS(2FJT)
已准备好,作为自动化脚本最简单版本的测试,已通过
- # 75.2 /home/databank/zyzhou/project/D3PM/3N0Y_2FJT/2FJT
- # PDB下载2fjt.pdb
- pdb4amber -i 2fjt.pdb -o 2fjt-pdb4amber.pdb --dry --reduce
- # 文本操作:将CSX全部替换为CYS,删除CSX的OD原子
- # 文本操作:删去B链蛋白链及 所有SO4离子
空蛋白,无二硫键,含硫酸根离子,CSX替换为CYS(2FJT)
硫酸根离子需要额外准备
- 75.2 /home/databank/zyzhou/project/D3PM/3N0Y_2FJT/2FJT_SO4/so4
- antechamber -i 2fjt_C_SO4.sdf -fi sdf -o SO4.gjf -fo gcrt -at gaff2 -gn %nproc=4 -gm %mem=4GB -gk "#B3LYP/6-31G* em=gd3bj pop=MK iop(6/33=2,6/42=6) opt" -rn MOL -nc -2
- antechamber -i SO4.log -fi gout -o SO4.prep -fo prepi -c resp;parmchk2 -i SO4.prep -f prepi -o SO4.frcmod -a y
复合物,无二硫键,一个锰离子(3N0Y)
锰不需要额外准备
配体带4个负电荷,正在23上跑高斯,直接b3lyp优化不通过
pm7也不通过,在水溶液中才能通过
- 23 /home/dddc/zzy/test/g16/75.2
- # 5-16 15:50
- # 发现晶体结构解析条件,pH为5.6,这个条件下,APC应该是中性了。氧原子是否电离不影响配位键。
- # 和师姐讨论后,计划用pH=5.6进行配体准备,
配体优化
5-14 经师兄指点,尝试把磷酸部分和非磷酸部分分开优化,看看哪个部分出了问题
- 23 /home/dddc/zzy/test/g16/75.2/seperate
- # 以分子中间的磷酸根后面一个氧原子后面的碳原子做分界,两个片段都包含这个碳原子,这个碳原子用氢饱和
- # 两个都成功了,磷酸部分的优化比非磷酸部分更快
- # 那为什么合起来就报错呢?
- # B3lyp,pm7 在水溶剂里都可以优化完成,但是真空就不行,水的优化结果去真空优化还是会报错
- 23 /home/dddc/zzy/test/g16/75.2/b3lyp_water_nowater