簡體   English   中英

如何使用MDAnalysis從Amber加載.prmtop和.crd文件?

[英]How to load .prmtop and .crd files from Amber using MDAnalysis?

我正在嘗試從Amber加載.crd文件,但這失敗了,因為它的格式不是MDAnalysis期望的格式(請參見最后的錯誤):

topology = 'top.prmtop'
trajectory = 'amberOut.crd'
u = MDAnalysis.Universe(topology, trajectory)

如果可以使用MDAnalysis讀取Amber .crd文件,則我不想使用此線程以及該

任何想法為什么不起作用? 如果我將軌跡加載到VMD中,則使用此命令(它可以工作):

vmd -parm7 top.prmtop -crdbox amberOut.crd

Traceback (most recent call last):
  File "analysis.py", line 5, in <module>
    u = MDAnalysis.Universe(topology, trajectory)
  File "/anaconda3/envs/mdaenv/lib/python2.7/site-packages/MDAnalysis/core/universe.py", line 305, in __init__
    self.load_new(coordinatefile, **kwargs)
  File "/anaconda3/envs/mdaenv/lib/python2.7/site-packages/MDAnalysis/core/universe.py", line 535, in load_new
    self.trajectory = reader(filename, **kwargs)
  File "/anaconda3/envs/mdaenv/lib/python2.7/site-packages/MDAnalysis/coordinates/base.py", line 1943, in __init__
    self._read_first_frame()
  File "/anaconda3/envs/mdaenv/lib/python2.7/site-packages/MDAnalysis/coordinates/CRD.py", line 73, in _read_first_frame
    natoms = int(fields[0])
ValueError: invalid literal for int() with base 10: '96.380'

在命令中為Universe使用format="TRJ"關鍵字參數:

u = MDAnalysis.Universe("top.prmtop", "amberOut.crd", format="TRJ")

您說過將VMD與“ crdbox”一起使用,並且MDAnalysis將“ crdbox”擴展名識別為Amber ASCII軌跡 但是,用於文件的“ crd”擴展名已經用於CHARMM坐標文件(“ CRD”文件),因此您需要顯式指定Universe的軌跡格式。

(如果為軌跡提供擴展名“ crdbox”或“ trj”,例如“ amberOut.crdbox”或“ amberOut.trj”,則MDAnalysis將自動將其識別為琥珀色ASCII軌跡。但是,您始終可以使用顯式format關鍵字參數。)

更新:基於此問題,我們更新了Amber軌跡閱讀器的MDAnalysis文檔,其中包括有關如何讀取Amber“ crd”軌跡的注釋

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM