# define EXTRA_ATOM_RECORD_SIZE 10 typedef struct { int ii ; double tmp ; double d[EXTRA_ATOM_RECORD_SIZE] ; } ExtraAtomRecord ; # define COPY_ATOM_VECTS_2TO1(A,x,B,y,n) \ CopyAtomVects2To1((ExtraAtomRecord **) &A[0], (char *) &A[0]->x, \ (ExtraAtomRecord **) &B[0], (char *) &B[0]->y, n) # define COPY_ATOM_VECTS_1TO2(A,x,B,y,n) \ CopyAtomVects2To1((ExtraAtomRecord **) &B[0], (char *) &B[0]->y, \ (ExtraAtomRecord **) &A[0], (char *) &A[0]->x, n) # define THRESHOLD_ATOM_VECTS(B,y,n,t) \ ThresholdAtomVects((ExtraAtomRecord **) &B[0], (char *) &B[0]->y, n, t) ExtraAtomRecord ** InitExtraAtomRecords(int n, int size); void CopyAtomVects2To1 (ExtraAtomRecord ** A0, char * A0Rx, ExtraAtomRecord ** B0, char * B0Ry, int n); void BDivRefVToOcc (file_records * f); atom_record * find_atom_in_file(const atom_record * atom ,file_records * f2); atom_record * InitDummyAtom(atom_record * atom); void dVToB(file_records * f); void RefVToB(file_records * f) ;