MDAnalysis聚类

  • from MDAnalysis import Universe
  • import MDAnalysis.analysis.encore as encore
  • import MDAnalysis
  • from MDAnalysis.tests.datafiles import PSF, DCD2 #导入测试轨迹
  • ens1 = Universe(PSF, DCD2) #load轨迹
  • cluster_collection = encore.cluster(ens1) #轨迹聚类
  • with MDAnalysis.Writer("cluster.xtc", multiframe=True) as xtc:
  •     for ts in ens1.trajectory[cluster_collection.get_centroids()]: #取每个cluster的中心
  •         xtc.write(ens1) #将每一类的中心输出为轨迹