AmberTools tLEaP 完整使用教程
基于 Amber24 官方手册 (Chapter 13: LEaP)
本教程系统介绍 tLEaP 的概念、指令、参数和使用流程
目录
- LEaP 简介
- 核心概念
- 运行 LEaP
- 命令参考
- 文件格式
- 常见工作流程
- 错误处理
- 高级用法
1. LEaP 简介
1.1 什么是 LEaP
LEaP 是 Amber 的 系统构建工具,用于:
- 加载分子结构(PDB、MOL2、OFF 等)
- 分配原子类型与力场参数
- 添加溶剂、离子
- 生成 Amber 模拟所需的 拓扑文件 (prmtop) 和 坐标文件 (inpcrd)
LEaP 有两个版本:
- tLEaP:命令行版本(推荐,可脚本化)
- xLEaP:图形界面版本
1.2 基本工作流程
力场参数 + PDB结构
↓
tLEaP
↓
prmtop + inpcrd
↓
sander/pmemd 模拟
2. 核心概念
2.1 对象类型
| 对象类型 | 说明 | 示例 |
|---|---|---|
| UNIT | 分子单元(可含多个残基) | 蛋白、配体、复合物 |
| RESIDUE | 残基(氨基酸、核苷酸、小分子等) | ALA, GLY, LIG |
| ATOM | 原子 | CA, N, O |
| PARMSET | 参数集合(力场) | ff19SB, GAFF2 |
2.2 变量赋值
LEaP 使用类似脚本的语法:
mol = loadpdb protein.pdb
LIG = loadmol2 ligand.mol2
2.3 对象访问
desc mol # 显示 mol 的信息
desc mol.1 # 显示第1个残基
desc mol.1.CA # 显示第1个残基的 CA 原子
3. 运行 LEaP
3.1 启动方式
交互模式
tleap
进入交互式命令行。
脚本模式(推荐)
tleap -f leap_script.in
带日志输出
tleap -f leap_script.in > leap.log 2>&1
3.2 环境变量
| 变量 | 说明 |
|---|---|
|
Amber 安装路径 |
|
搜索路径 |
3.3 命令行参数
tleap [选项]
| 参数 | 说明 |
|---|---|
|
执行脚本文件 |
|
批处理模式(无交互) |
|
添加搜索路径 |
|
显示帮助 |
示例:
tleap -I ~/mylibs -f setup.in -s
4. 命令参考
4.1 力场加载
source
功能:加载力场参数或命令文件
语法:
source <filename>
常用力场文件:
source leaprc.protein.ff19SB # 蛋白力场
source leaprc.DNA.OL15 # DNA
source leaprc.RNA.OL3 # RNA
source leaprc.gaff2 # 小分子通用力场
source leaprc.water.tip3p # 水模型
source leaprc.lipid21 # 脂质
说明:
leaprc.*
文件位于
$AMBERHOME/dat/leap/cmd/ 可以加载多个力场(按需组合)
4.2 结构加载
loadpdb
功能:从 PDB 文件加载结构
语法:
<unit> = loadpdb <pdbfile>
示例:
mol = loadpdb protein.pdb
注意:
- PDB 中的残基名必须与库中定义匹配
- 缺失原子会自动添加(如果库中有定义)
loadmol2
功能:从 MOL2 文件加载小分子
语法:
<unit> = loadmol2 <mol2file>
示例:
LIG = loadmol2 ligand.mol2
说明:
- MOL2 包含原子类型、电荷、键连接
- 通常与
配合使用loadamberparams
loadoff
loadamberprep
功能:加载 OFF 库或 PREP 文件
语法:
loadoff <libfile>
<unit> = loadamberprep <prepfile>
示例:
loadoff custom_residue.lib
HIE = loadamberprep hie.prepi
loadamberparams
功能:加载力场修正参数(frcmod)
语法:
loadamberparams <frcmodfile>
示例:
loadamberparams ligand.frcmod
说明:
- 补充 GAFF 未定义的键、角、二面角参数
- 通常由
生成parmchk2
4.3 拓扑编辑
bond
功能:手动添加化学键
语法:
bond <atom1> <atom2> [order]
示例:
bond mol.10.SG mol.50.SG # 二硫键
bond mol.183.OG mol.200.C10 S # 单键
键类型:
S
:单键(默认)
D
:双键
T
:三键
deleteBond
功能:删除化学键
语法:
deleteBond <atom1> <atom2>
set
功能:设置对象属性
语法:
set <object> <property> <value>
常用属性:
set LIG.C1 type c3 # 设置原子类型
set LIG.C1 charge 0.5 # 设置电荷
set LIG name "LIG" # 设置残基名
set LIG head LIG.N # 设置头部原子
set LIG tail LIG.C # 设置尾部原子
remove
功能:删除原子或残基
语法:
remove <container> <object>
示例:
remove mol mol.1 # 删除第1个残基
remove mol mol.1.CA # 删除 CA 原子
4.4 溶剂与离子
solvatebox
功能:添加矩形溶剂盒
语法:
solvatebox <unit> <solventbox> <buffer> [iso] [closeness]
参数:
<solventbox>
:溶剂类型(如
TIP3PBOX, SPCBOX)
<buffer>
:距离溶质表面的最小距离(?)
[iso]
:是否使用等距盒子(默认否)
[closeness]
:溶剂分子最小间距(默认 1.0 ?)
示例:
solvatebox mol TIP3PBOX 10.0
solvatebox mol TIP3PBOX 12.0 iso
solvateOct
功能:添加八面体溶剂盒
语法:
solvateOct <unit> <solventbox> <buffer> [iso]
说明:
- 八面体盒减少约 1/4 溶剂分子数
- 适合球形体系
addions
addions2
功能:添加离子(中和或指定数量)
语法:
addions <unit> <iontype> <number>
addions2 <unit> <cation> <anion> <salt_conc>
示例:
addions mol Na+ 0 # 中和体系
addions mol Cl- 5 # 添加5个氯离子
addions2 mol Na+ Cl- 0.15 # 添加0.15 M NaCl
离子类型:
单价:
Na+
K+
Cl-
Br-
二价:
Mg2+
Ca2+
Zn2+
4.5 信息查看
desc
功能:显示对象详细信息
语法:
desc <object>
示例:
desc mol
desc mol.1.CA
desc LIG
list
功能:列出当前所有变量
语法:
list
check
功能:检查 UNIT 完整性
语法:
check <unit>
检查内容:
- 缺失原子
- 缺失参数
- 异常键长/角度
- 电荷总和
示例:
check mol
4.6 文件输出
saveamberparm
功能:保存 Amber 拓扑与坐标文件
语法:
saveamberparm <unit> <prmtopfile> <inpcrdfile>
示例:
saveamberparm mol complex.prmtop complex.inpcrd
savepdb
功能:保存为 PDB 格式
语法:
savepdb <unit> <pdbfile>
示例
savepdb mol solvated.pdb
saveoff
功能:保存为 OFF 库文件
语法
saveoff <unit> <libfile>
示例
saveoff LIG ligand.lib
savemol2
功能:保存为 MOL2 格式
语法
savemol2 <unit> <mol2file> <type>
示例
savemol2 LIG output.mol2 0
4.7 其他指令
combine
功能:合并多个 UNIT
语法
<newunit> = combine {<unit1> <unit2> ...}
示例
complex = combine {protein ligand}
sequence
功能:从残基序列构建多肽/核酸
语法
<unit> = sequence {<res1> <res2> ...}
示例
peptide = sequence {ALA GLY SER}
dna = sequence {DA DT DG DC}
quit
功能:退出 LEaP
语法
quit
5. 文件格式
5.1 输入文件格式
格式
说明
用途
PDB
蛋白数据库格式
蛋白、核酸结构
MOL2
Tripos 格式
小分子(含类型、电荷)
OFF/LIB
Amber 库格式
残基模板
PREP
Amber prep 格式
残基预处理
FRCMOD
力场修正
补充参数
5.2 输出文件格式
文件
说明
prmtop
Amber 拓扑文件(ASCII)
inpcrd
Amber 坐标文件(ASCII)
pdb
PDB 格式
mol2
MOL2 格式
lib
OFF 库文件
6. 常见工作流程
6.1 蛋白-小分子复合体
# 1. 加载力场
source leaprc.protein.ff19SB
source leaprc.gaff2
source leaprc.water.tip3p
# 2. 加载小分子
LIG = loadmol2 ligand.mol2
loadamberparams ligand.frcmod
# 3. 加载蛋白
protein = loadpdb protein.pdb
# 4. 合并(如果需要)
complex = combine {protein LIG}
# 5. 添加共价键(如果需要)
bond complex.100.SG complex.200.C1
# 6. 溶剂化
solvatebox complex TIP3PBOX 12.0
# 7. 添加离子
addions complex Na+ 0
# 8. 检查
check complex
# 9. 保存
saveamberparm complex complex.prmtop complex.inpcrd
savepdb complex complex_wat.pdb
# 10. 退出
quit
6.2 膜蛋白系统
source leaprc.protein.ff19SB
source leaprc.lipid21
source leaprc.water.tip3p
protein = loadpdb membrane_protein.pdb
membrane = loadpdb membrane.pdb
complex = combine {membrane protein}
solvatebox complex TIP3PBOX 15.0 iso
addions2 complex Na+ Cl- 0.15
check complex
saveamberparm complex system.prmtop system.inpcrd
quit
6.3 DNA/RNA 系统
source leaprc.DNA.OL15
source leaprc.water.tip3p
dna = loadpdb dna.pdb
solvatebox dna TIP3PBOX 10.0
addions dna Na+ 0
check dna
saveamberparm dna dna.prmtop dna.inpcrd
quit
7. 错误处理
7.1 常见错误
错误信息
原因
解决方法
Unknown residue: XXX
PDB 残基名称未定义
检查残基名称或加载相应库
Atom has no type
原子类型未指定
检查 mol2 或使用
set
指令
Could not find bond parameter
缺失键参数
生成 frcmod 或手动添加
coordination X but Y neighbors
原子类型与键数不符
修改原子类型或键表
charge not integral
系统总电荷非整数
检查电荷或添加离子
7.2 调试技巧
使用
desc
查看对象
desc mol
desc mol.1.CA
使用
check
验证完整性
check mol
保存中间结果
savepdb mol intermediate.pdb
查看日志
tleap -f script.in > leap.log 2>&1
cat leap.log
8. 高级用法
8.1 自定义残基
# 创建新残基
NEW = sequence {ALA}
set NEW name "NEW"
set NEW.1.CA type cx
saveoff NEW new_residue.lib
8.2 环境变量使用
set default PBradii mbondi3
set default nocenter on
8.3 循环与条件(需要脚本封装)
LEaP 本身不支持编程结构,但可以用 Shell 或 Python 生成脚本。
Shell 示例
for i in {1..10}; do
cat > leap_${i}.in <<EOF
source leaprc.protein.ff19SB
mol = loadpdb protein_${i}.pdb
check mol
saveamberparm mol out_${i}.prmtop out_${i}.inpcrd
quit
EOF
tleap -f leap_${i}.in
done
9. 参考资源
资源
链接/位置
官方手册
https://ambermd.org/doc12/Amber24.pdf
教程
https://ambermd.org/tutorials/
力场文件
$AMBERHOME/dat/leap/cmd/leaprc.*
库文件
$AMBERHOME/dat/leap/lib/
参数文件
$AMBERHOME/dat/leap/parm/
10. 总结
核心命令速查
功能
指令
加载力场
source leaprc.*
加载结构
loadpdb
,
loadmol2
,
loadoff
加载参数
loadamberparams
编辑拓扑
bond
,
set
,
remove
溶剂化
solvatebox
,
solvateOct
添加离子
addions
,
addions2
查看信息
desc
,
list
,
check
保存文件
saveamberparm
,
savepdb
,
saveoff
学习建议
从简单系统(单蛋白)开始
理解 UNIT-RESIDUE-ATOM 层次
熟练使用
check
诊断问题
参考官方教程实践
遇到问题查阅手册 Chapter 13
本教程基于 Amber24 官方手册编写,适用于 AmberTools24/Amber24

雷达卡


京公网安备 11010802022788号







