24小时热门版块排行榜    

查看: 4269  |  回复: 7

zhuhongaaa

金虫 (正式写手)

[交流] 【转帖】【ZZ】使用xdrfile读取gromacs的trr和xtc文件 已有7人参与

xdrfile是gmx开发的一个用来读取trr文件和xtc文件的库,可以在gmx的主页上下载安装。安装不需要一共gmx的安装路径。
安装后生成一个trr2xtc可执行文件。可以简单的把trr文件转化问xtc文件来减小体积,节约空间。
更为主要的是我们可以利用xdrfile中的库自行编写程序读取gmx的trr文件和xtc文件,用于轨迹分析,相当方便。


xdrfile/include/xdrfile/目录下面有三个用C写的头文件,可以include到我们自己的C程序和C++程序中。
下面是一个读取trr文件的C程序示例:
/*
file name is
trr.c
*/
#include
#include
#include
int natoms,step,natom,read_return;
float time,lambda;
matrix box;
rvec *x,*v,*f;
XDRFILE *trr;
main ()
{
trr=xdrfile_open (“traj.trr”,”r”);
read_return=read_trr_natoms (“traj.trr”,&natoms);
x = calloc(natoms, sizeof(x[0]));
while (1)
{
read_return=read_trr (trr,natoms,&step,&time,box,lambda,x,v,f);
if (read_return!=0)
{
break;
}
for (natom=1;natom<=natoms;natom++)
{
printf (“%d %f %d %f %f %f\n”,step,time,natom,x[natom-1][0],x[natom-1][1],x[natom-1][2]);
}
}
xdrfile_close (trr);
}
~
~
~
可以用gcc 直接编译运行。编译的时候注意添加头文件的路径。
下面是用C++写的读取xtc文件的一个示例:
/*
file name is
xtc.cpp
*/
#include
extern “C”
{
#include
}
using namespace std;
int main (int argc,char * argv[])
{
char * filename;
int natoms,step;
filename=”traj.xtc”;
float time;
float p;
matrix box;
rvec *x;
XDRFILE *xtc;
xtc=xdrfile_open(filename,”r”);
int read_return=read_xtc_natoms(filename,&natoms);
x=(rvec * )calloc(natoms,sizeof(x[0]));
while(1)
{
read_return=read_xtc(xtc,natoms,&step,&time,box,x,&p);
if(read_return!=0)
{
break;
}
for(int natom=0;natom {
cout< }
}
xdrfile_close(xtc);
return 0;
}
~
可以用g++ 直接编译运行。编译的时候注意添加头文件的路径。
http://zhuhong.freetzi.com/wordpress/?p=57
有问题欢迎留言或mail。
转载请注明。
回复此楼
分子模拟的主页http://varmilion.tk/
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

piao666

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
您好,能不能请教一下xdrfile的详细安装方法,我在应用C程序的时候头文件找不到,应该是安装出了问题,非常需要你的帮助,谢谢!
2楼2018-09-26 15:44:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小城小暖

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
你好,我通过这个查看读取轨迹文件,能否用来计算组成团簇的分子数随时间的变化?

发自小木虫IOS客户端
3楼2019-12-01 20:20:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

4楼2019-12-31 16:21:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

5楼2020-01-02 17:25:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

6楼2020-01-04 11:20:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
本帖内容被屏蔽

7楼2020-01-06 16:59:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

8楼2022-10-25 01:26:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhuhongaaa 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见