# analysis_pdb



## install environment

```shell
micromamba create -n modeller modeller biopython pymol-open-source biopandas requests ipython ipykernel pydantic pyfastx ipython -y -c conda-forge -c salilab -c bioconda
conda create -n pyfastx modeller biopython pymol-open-source biopandas requests ipython ipykernel pydantic pyfastx ipython seaborn -y -c conda-forge -c salilab -c bioconda
# modeller注册码：MODELIRANJE (<conda_env>//lib/modeller-10.4/modlib/modeller/config.py)
# 绘图环境 统计test.py
conda install -c conda-forge seaborn -y
pip install python-calamine

# 一条命令：
micromamba create -n pyfastx modeller biopython pymol-open-source biopandas requests ipython ipykernel pydantic pyfastx ipython pyfastx modeller biopython pymol-open-source biopandas requests ipython ipykernel pydantic pyfastx ipython seaborn python-calamine -y -c conda-forge -c salilab -c bioconda
```

modeller注册码：`MODELIRANJE`

## quick start

多进程调用修复,文件目录`/path/to/pdb/file`,下面的`*.pdb`文件，修复好的文件会自动组装保存至`runner_*/*.modellerfix.pdb`文件

```shell
python mainfix.py /path/to/pdb/file modelbuilder.py
```

## test 

```shell
cp pdb_test/5isz.pdb pdb_gjm/
gmx_mpi pdb2gmx -f 5isz.pdb -o 5isz.gro -ff amber99sb-ildn -water tip3p -ignh -p topol.top
```

# 利用 modeller进行 融合蛋白多模板建模

单模板建模和多模板建模的异同：

单模板建模是通过序列比对的方法，找到与目标序列相似度最高的一条序列作为模板（序列相似=>结构相似），再在此基础上进行优化。

多模板建模是通过多序列比对，这些序列中的保守区域的结构特征很容易确定，对于差异的片段，在多条序列片段中找到与目标序列片段最主导（Dominant）的结构。然后将这些碎片的结构拼接成一个完整的目标序列结构。

多模板建模更容易选择最佳模板

[参考](https://zhuanlan.zhihu.com/p/127021344)

[参考](https://blog.csdn.net/weixin_40640700/article/details/90711623)

测试所用的脚本路径：`<python path>lib/modeller-10.4/examples/commands`

去 Modeller 下载最新的 [PDB sequences文件](https://salilab.org/modeller/supplemental.html)

Last update: January 4th, 2024.

pdball.pir.gz：包含所有蛋白质数据银行（PDB）序列的文件。这个文件可能非常大，因为它包含了PDB中的每一个序列。

pdb_95.cod.gz：包含在95%身份相似度水平下聚类的代表性PDB代码的文件。这意味着在这个文件中的每个PDB代码代表了一个序列簇，其中的序列彼此间的相似度至少为95%。

pdb_95.grp.gz：包含每个95%身份相似度聚类的所有PDB代码的文件。这有助于了解特定聚类中包含哪些PDB条目。

pdb_95.pir.gz：包含95%身份相似度聚类的代表性序列的文件。每个聚类选取一个代表性序列，这些序列的身份相似度至少为95%。

.cod 文件：通常包含蛋白质数据银行（PDB）中代表性蛋白质结构的PDB代码。在这个上下文中，pdb_95.cod 文件可能包含在95%序列相似度下聚类的代表性PDB结构的PDB代码。

.grp 文件：含有组成特定聚类的所有PDB代码的文件。例如，pdb_95.grp 文件可能列出了在95%序列相似度聚类中的所有PDB代码，展示了属于同一聚类（即序列相似性高）的蛋白质结构。

.pir 文件：是Protein Information Resource格式的文件，常用于蛋白质序列和结构的表示。这种格式特别适合于序列比对和蛋白质建模。在您提到的情况中，pdb_95.pir 可能包含了95%相似度聚类中的代表性蛋白质序列。


使用场景

高相似度（如95%）：用于更精确地找到与目标序列高度相似的模板，通常用于更精细的同源建模。

低相似度（如40%）：用于在较宽的范围内寻找模板，可能在研究更广泛的蛋白质家族或进化关系时有用。


# 记录

`7rtr` 对比序列太长，需要去除尾端

无缺失：1bd2,

`1d9k` 

tcr: AB
mhc CD
peptide P 

`1kj2` p周围只有三条链

`3C5Z` `3C60` `3O6F` `3PL6` `3RDT` `4MAY` `4P4K` 没有peptide

`3GJF` K、L链 空间位置不正确。

`4z7u` 重叠，缺失链，tcr，hmc只有一半
----
单聚体记录：

`1ao7` E 链 221-225 THR 是缺失 PDB文件结构也正常 可能是坐标脱离太原导致缺失。 经过观察，221和222为的TRP和GLU 肽键的C-N长度为2.0 埃（Å），碳（C）和氮（N）原子之间的典型距离大约是 1.32 埃（Å）。导致动画结构展示不正确，需要手动删除然后，建模修复。这里的221和222就是moderller修复之后的结果，原始的1ao7在216-230都是缺失的。可能moderller修复参数不正确，导致221和222位置修复不合理。这个结果已经交付，说明MD模拟成功，证明这里可以正常跑MD，因此同样问题的`6bga`应该也能正常进行MD模拟。

`3qiu` `4ozf` 拖尾

`6avf` H 链太长

`6px6` B 链太长

`6py2` B 链太长

`6u3n` B 链111修复失败, pymol 观察缺失，但是MOE，其他软件观察没问题，PDB文件结构也正常。可能是坐标脱离太原导致缺失

`4grl` pymol 观察缺失，但是MOE，其他软件观察没问题，PDB文件结构也正常。可能是坐标脱离太原导致缺失

`7rk7` `7rtr` 拖尾

`6uk4` `6uln` `6vm8` `7l1d` `7rrg` 仅有HMC呈递peptide，没有TCR识别互相作用

`7jwj` A链拖尾太长

`5ksa` peptide （J 链）-1 到1发现缺失（0位缺失），但是实际上需不需要修复的，但是进行了修复，所以这里是peptide编号错误。手动将J链编号-1改为0，重新进行同源建模修复，pdb_test4修复。

`6bga`  B链 138-139 位置不合理缺失，需要手动删除序列位置然后修复，原始的6bga也是可能moderller修复参数不正确，导致 138-139 位置修复不合理。

`7rdv` C链拖尾太长，修复失败，需要后续检查原因，卡在B链修复问题，修复bug，pdb_test4修复。

tcr: DE
mhc I

peptide Q

`3mv7` `3mv8` `3mv9` D链修复有问题，没有修复成功。使用ESMfold 修复D链

`7rk7` 在A链末端出现大面积结构缺失，使用modeller修复了这些区域导致出现大面积的loop区域，考虑使用，使用ESMfold 修复D链。

___
总结：2024-01-26


7rk7缺失的很厉害，3mv7，8，9这三个modeller修复不了，我用ESMfold修复的。这四个另作考虑。

——————

单体，6个MD差集的问题

7rdv B链尾部loop过多，用ESMfold预测可能更好

6bj2 结构A链建模修复后不见了？有问题待修复。同时chain D上面的β折叠在修复后不见了，尝试重新修复，检查问题。重新修复后结构展示正常。

1nam L链尾部loop过多，用ESMfold预测可能更好

3o4l，5ksa，结构完好

6bga，结构整体没有问题，但是，peptide不在HMC的抓手的两个α螺旋中，非典型的TCR-pHMC的结构特征。modeller修复正常

-------
下面是多聚体修复记录:

1mwa: B D 链 116 117 动画缺失，实际不缺失

3mbe: F链loop区域太多， 多聚体另外一部分结构缺失

3pqy: 根据fasta序列信息选择：chain B or chain K or chain M or chain O or chain E。TCR蛋白两条链中间有插入一个Beta-2-microglobulin导致TCR两条链分开。
Beta-2-microglobulin (β2微球蛋白) 是一种小型蛋白质，广泛存在于所有核细胞的表面。它是主要组织相容性复合体 (MHC) 类I分子的轻链部分，与MHC类I的重链结合，不仅参与细胞间的免疫识别，还在多种生理和病理过程中发挥作用。

`3sjv` 多聚体loop区域太多 剔除

`4e41` HMC区域缺失  剔除

`4h1l` loop区域太多 剔除

`4p2q` `4p2r`  peptide 0位缺失，并且没有在HMC上面呈递

`4z7u` 修复之后阿尔法螺旋和β折叠 变成了loop区域

# `4p2q` `4p2r` `4z7u` 这些多聚体修复之后出现了 阿尔法螺旋和β折叠 变成了loop区域， 尝试提取单聚体在修复

``

cmd.select('sele', '4mji and (chain D or chain E or chain C or chain A or chain B)')

cmd.save('C:/Users/lingyuzeng/Documents/newfix0123/multimer_polymeric_extra/3ffc.pdb', 'sele')

# 多聚体58个

先提取单体之后尝试修复

根据TCR-pMHC4.xlsx的记录信息提取单体，然后复制到pdb_test7, 手动修改 5ks9、5ksb的 I链peptide的缺失问题。

然后修复。