当前位置: 首页 > news >正文

主题017:粗粒化分子动力学

主题017:粗粒化分子动力学

1. 理论基础

1.1 粗粒化的动机

全原子模拟的局限

  • 时间尺度受限(~μs)
  • 空间尺度受限(~100 nm)
  • 计算成本高

粗粒化的优势

  • 更大的时间步长(10-50 fs)
  • 更长的模拟时间(~ms)
  • 更大的系统尺寸(~μm)
  • 更快的采样

1.2 粗粒化映射

映射策略

  • 几个原子 → 一个珠子(bead)
  • 保留关键化学特征
  • 消除快自由度

常见映射

  • united-atom:CH₂, CH₃ 作为单个珠子
  • Martini:~4个重原子一个珠子
  • 介观模型:更大尺度的粗粒化

1.3 有效势能

势能形式
通常保留与全原子类似的形式,但参数不同:
UCG=Ubond+Uangle+Unon−bondedU_{CG} = U_{bond} + U_{angle} + U_{non-bonded}UCG=Ubond+Uangle+Unonbonded

参数化方法

  • 结构匹配:匹配径向分布函数
  • 力匹配:匹配平均力
  • 相对熵:匹配概率分布

2. Martini力场

2.1 珠子类型

四种主要类型

  • P:极性
  • N:非极性
  • C:带电
  • Q:四极

亚型
通过字母和数字组合表示(如Na = 非极性,接受氢键)

2.2 相互作用参数

Lennard-Jones参数
根据珠子类型查表获得。

相互作用矩阵

PNCQ
Pε₁ε₂ε₃ε₄
Nε₂ε₅ε₆ε₇
Cε₃ε₆ε₈ε₉
Qε₄ε₇ε₉ε₁₀

3. 粗粒化算法

3.1 从全原子轨迹粗粒化

classCoarseGrainer:"""粗粒化映射类"""def__init__(self,mapping_scheme):""" 初始化粗粒化方案 Parameters ---------- mapping_scheme : dict 映射方案 {cg_bead: [atom_indices]} """self.mapping=mapping_scheme self.n_cg=len(mapping_scheme)defmap_positions(self,atom_positions,masses=None):""" 将原子位置映射到粗粒化位置 Parameters ---------- atom_positions : ndarray (n_atoms, 3) 原子位置 masses : ndarray (n_atoms,), optional 原子质量,用于质量加权 Returns ------- ndarray (n_cg, 3) 粗粒化位置 """cg_positions=np.zeros((self.n_cg,3))fori,(bead_name,atom_indices)inenumerate(self.mapping.items()):ifmassesisnotNone:# 质心bead_masses=masses[atom_indices]cg_positions[i]=np.average(atom_positions[atom_indices],axis=0,weights=bead_masses)else:# 几何中心cg_positions[i]=np.mean(atom_positions[atom_indices],axis=0)returncg_positionsdefmap_forces(self,atom_forces,mapping_scheme):""" 将原子力映射到粗粒化力 Parameters ---------- atom_forces : ndarray (n_atoms, 3) 原子力 Returns ------- ndarray (n_cg, 3) 粗粒化力 """cg_forces=np.zeros((self.n_cg,3))fori,atom_indicesinenumerate(self.mapping.values()):cg_forces[i]=np.sum(atom_forces[atom_indices],axis=0)returncg_forces

3.2 粗粒化MD模拟

classCGMDSimulation:"""粗粒化分子动力学模拟"""def__init__(self,cg_positions,cg_masses,force_field):""" 初始化CGMD模拟 Parameters ---------- cg_positions : ndarray 粗粒化位置 cg_masses : ndarray 粗粒化珠子质量 force_field : object 粗粒化力场 """self.positions=cg_positions self.masses=cg_masses self.ff=force_field self.velocities=np.zeros_like(cg_positions)defstep(self,dt):""" 积分一步(速度Verlet) Parameters ---------- dt : float 时间步长(可以比全原子大10-20倍) """# 计算力forces=self.ff.compute_forces(self.positions)# 速度Verletself.velocities+=0.5*dt*forces/self.masses[:,np.newaxis]self.positions+=dt*self.velocities# 应用PBCself.positions%=self.ff.box_length# 新力forces=self.ff.compute_forces(self.positions)self.velocities+=0.5*dt*forces/self.masses[:,np.newaxis]

4. 反向映射

4.1 从粗粒化到全原子

目的

  • 恢复原子细节
  • 进行后续分析
  • 与实验对比

方法

  • 几何重建
  • 能量最小化
  • 短平衡模拟

5. 总结

粗粒化分子动力学是扩展模拟时空尺度的有效方法:

  1. 粗粒化映射减少了自由度,提高了计算效率
  2. Martini力场是生物分子粗粒化的标准
  3. 参数化是粗粒化成功的关键
  4. 反向映射可以恢复原子细节用于分析
http://www.jsqmd.com/news/395042/

相关文章:

  • AIGC 与 AI 配音,引领语音技术新方向
  • 2026年国内硕博论文中文润色AI工具选型指南:多模型对比下的学术性提升解决方案 - 小白条111
  • 主题016:反应路径与过渡态理论
  • AI应用架构师亲测:智能运维平台解决运维成本高的3个有效方案
  • XML Schema 限定 / Facets
  • agent 是可声明实体
  • 2026年海外留学生英文论文润色工具选型指南:多AI协同如何解决单一模型的3大痛点 - 小白条111
  • 63.排序数组中找元素的第一个元素和最后一个元素
  • XHR.readyState详解
  • 区块链+:催生新的应用场景与生产关系变革
  • SQL 主机:深入解析数据库的核心
  • HBase Shell命令大全:从基础操作到高级查询全掌握
  • 6款毕业论文AI写作工具横向测评,帮你精准选择
  • 62 在递增二维数组中查找target,要求用Ologn
  • 毕业论文必备:6个高评分AI写作平台实测分析
  • ECharts 交互组件
  • Tauri 用“系统 WebView + 原生能力”构建更小更快的跨平台应用
  • 6个优质AI写作平台测评,助力毕业论文高效完成
  • 9、PipedInputStream和PipedOutputStream的源码分析和使用方法详细分析
  • 5467896
  • 毕业论文AI工具怎么选?6款上榜平台深度评测
  • 毕业论文AI写作平台推荐:6款热门工具测评对比
  • 7856786
  • 《jEasyUI 转换 HTML 表格为数据网格》
  • 《jEasyUI 创建 RSS 阅读器》
  • 从提示词到操作系统:掌握上下文工程,开启大模型进阶之路(收藏必备)
  • Matplotlib 安装指南
  • 凸优化数学基础笔记(五):极小值点的判定条件
  • DOM 浏览器:深入解析与优化实践
  • 大年初三