私は少し異常な状況にあります。残基名に従って、1 つのファイルに 7 つの異なるタンパク質が保存されています。各タンパク質の配列の長さは異なります。次に、各タンパク質の重心を計算し、時系列データを生成する必要があります。単一のタンパク質を扱う方法は知っていますが、複数のタンパク質システムを扱う方法は知りません。単一のタンパク質の場合、次のようなことができます。
import MDAnalysis as mda
import numpy as np
u = mda.Universe('lp400start.gro')
u1 = mda.Merge(u.select_atoms("not resname W and not resname WF and not resname ION"))
u1.load_new('lp400.xtc')
protein = u1.select_atoms("protein")
arr = np.empty((protein.n_residues, u1.trajectory.n_frames, 3))
for ts in u.trajectory:
arr[:, ts.frame] = protein.center_of_mass(compound='residues')
データ ファイルはここで公開されています。トポロジ ファイルの残基シーケンスはgrep "^ *1[A-Z]" -B1 lp400final.gro | grep -v "^ *1[A-Z]"、出力を使用して確認できます。
38ALA BB 74 52.901 33.911 6.318
--
38ALA BB 148 41.842 29.381 7.211
--
137GLY BB 455 36.756 4.287 3.284
--
137GLY BB 762 44.721 60.377 3.112
--
252HIS SC3 1368 28.682 37.936 6.727
--
252HIS SC3 1974 18.533 46.506 6.314
--
576PHE SC3 3263 48.937 38.538 4.013
--
576PHE SC3 4552 18.513 25.948 3.800
--
1092PRO SC1 6470 42.510 40.992 6.775
--
1092PRO SC1 8388 14.709 4.759 6.370
--
1016LEU SC110524 57.264 56.308 2.632
--
1016LEU SC112660 50.716 14.698 2.728
--
1285LYS SC215345 0.793 33.529 1.509
最初のタンパク質は 38 残基の配列長を持ち、それ自体のコピーを持ち、次に 2 番目のタンパク質などを持ちます。ここで、各時間枠で各タンパク質の COM を取得し、それを時系列に組み込みたいと考えています。タンパク質トポロジーファイルに加えて、DPPC 粒子も含まれています。Could someone help me how to do this?ありがとう!
出力軌跡が正しいことを確認するには、次のように表示されます。ここにリンクの説明を入力してください