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

AF3 make_pseudo_beta函数解读

AlphaFold3  data_transforms 模块的 make_pseudo_beta 函数 通过调用函数pseudo_beta_fn 为蛋白质结构生成伪β碳(pseudo-beta,简称 pβ)的位置和掩码。伪β碳是一种用于表示蛋白质主链结构的简化原子,通常用于替代β碳(CB),而在甘氨酸(Glycine,简称 Gly)中则使用α碳(CA)作为替代。

源代码:

@curry1
def make_pseudo_beta(protein, prefix=""):
    """Create pseudo-beta (alpha for glycine) position and mask."""
    assert prefix in ["", "template_"]
    (
        protein[prefix + "pseudo_beta"],
        protein[prefix + "pseudo_beta_mask"],
    ) = pseudo_beta_fn(
        protein["template_aatype" if prefix else "aatype"],
        protein[prefix + "all_atom_positions"],
        protein["template_all_atom_mask" if prefix else "all_atom_mask"],
    )
    return protein


def pseudo_beta_fn(aatype, all_atom_positions, all_atom_mask):
    """Create pseudo beta features."""
    is_gly = torch.eq(aatype, rc.restype_order["G"])
    ca_idx = rc.atom_order["CA"]
    cb_idx = rc.atom_order["CB"]
    pseudo_beta = torch.where(
        torch.tile(is_gly[..., None], [1] * len(is_gly.shape) + [3]),
        all_atom_positions[..., 

http://www.kler.cn/a/588107.html

相关文章:

  • 【菜鸟飞】Conda安装部署与vscode的结合使用
  • 技术解析:基于AI+云计算的智能呼叫中心系统如何重构零售行业服务生态?
  • 数据结构与算法-图论-欧拉路径和欧拉回路(有向图和无向图,骑马修栅栏,单词游戏 play on words)详细代码注解
  • 实践 PyTorch 手写数字识别
  • 查看debian的版本信息
  • Linux系统下如何部署svmspro平台
  • vue3系列:vite+vue3怎么配置通过ip和端口打开浏览器
  • 设计模式,持续更新
  • 数据结构------线性表
  • EDAS:投稿经验-word版本-问题解决
  • C语言_数据结构总结9:树的基础知识介绍
  • 51单片机的工作方式
  • 直方图梯度提升:大数据时代的极速决策引擎
  • Windows编译Flash-attention模块
  • 于 Hexo + GitHub Pages 的搭建个人博客网站的详细教程
  • 失败的面试经历(ʘ̥∧ʘ̥)
  • 如何利用物理按键控制LVGL控件的大小与状态
  • 六十天前端强化训练之第二十天React Router 基础详解
  • python-数据类型字符串和列表
  • java学习总结(四)MyBatis多表