--- /dev/null
+/*
+ * calculation of diffusion coefficient
+ *
+ * author: frank.zirkelbach@physik.uni-augsburg.de
+ *
+ */
+
+#define _GNU_SOURCE
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <string.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+
+#include "moldyn.h"
+
+int usage(char *prog) {
+
+ printf("\nusage:\n");
+ printf(" %s <save file>\n\n",prog);
+
+ return -1;
+}
+
+int main(int argc,char **argv) {
+
+ t_moldyn moldyn;
+ int ret;
+ double dc[3];
+
+ if(argc!=2) {
+ usage(argv[0]);
+ return -1;
+ }
+
+ memset(&moldyn,0,sizeof(t_moldyn));
+
+ printf("[diffusion calc] reading save file ...\n");
+ ret=moldyn_read_save_file(&moldyn,argv[1]);
+ if(ret) {
+ printf("[diffusion calc] exit!\n");
+ return ret;
+ }
+
+ calculate_diffusion_coefficient(&moldyn,dc);
+
+ dc[0]*=(100*100*SECOND/(METER*METER));
+ dc[1]*=(100*100*SECOND/(METER*METER));
+ dc[2]*=(100*100*SECOND/(METER*METER));
+
+ printf("diffusion coefficients: %.10f %.10f %.10f [cm^2/s]\n",
+ dc[0],dc[1],dc[2]);
+
+ return 0;
+}
+