X-Git-Url: https://hackdaworld.org/gitweb/?p=physik%2Fposic.git;a=blobdiff_plain;f=vasp_tools%2Fpc_calc.c;h=f37506f6afe0cec749ff8859a3c64cb700281be0;hp=10275d2d5d8b957765d79657b3b74e5cbb7d645b;hb=53c3c379eeffe5029987baee26e8a93927527632;hpb=1cf2114a39da91459ec33d0ecb208915eba74832 diff --git a/vasp_tools/pc_calc.c b/vasp_tools/pc_calc.c index 10275d2..f37506f 100644 --- a/vasp_tools/pc_calc.c +++ b/vasp_tools/pc_calc.c @@ -47,28 +47,61 @@ int main(int argc,char **argv) { t_atom *atom; double *aslot,*bslot,*cslot; - int acnt,bcnt,ccnt,cnt,count,slots; + int cnt,count,fcnt,slots; int fd; char buf[256],*wptr; int i,j,k; double dx2,dy2,dz2,dist,norm; double sx,sy,sz; - if(argc!=5) { - printf("usage: %s file sx sy sz\n",argv[0]); + atom=NULL; + + if(argc<5) { + printf("usage: %s sx sy sz file1 file2 ...\n",argv[0]); return -1; } - fd=open(argv[1],O_RDONLY); + sx=atof(argv[1]); + sy=atof(argv[2]); + sz=atof(argv[3]); + + // prepare pc + + slots=MAXR/DELTA; + aslot=malloc(slots*sizeof(double)); + if(aslot==NULL) { + perror("slot a\n"); + return -1; + } + memset(aslot,0,slots*sizeof(double)); + bslot=malloc(slots*sizeof(double)); + if(bslot==NULL) { + perror("slot a\n"); + return -1; + } + memset(bslot,0,slots*sizeof(double)); + cslot=malloc(slots*sizeof(double)); + if(cslot==NULL) { + perror("slot a\n"); + return -1; + } + memset(cslot,0,slots*sizeof(double)); + + printf("i: allocated 3 times %d slots ...\n",slots); + + // use all given files ... + printf("using files:\n"); + for(fcnt=4;fcnt