#include #include #define NATOMX 160 #define NATOMY 300 /* lenght in picometer !!!! if not, round-off errors !!!! */ void main(int argc, char *argv[]){ float atoms[NATOMX*NATOMY][2],rot[NATOMX*NATOMY][2],rt1[NATOMX*NATOMY][3],rt2[NATOMX*NATOMY][3]; float sheet[NATOMX*NATOMY][2],a=142,xmin,xmax,ymin,ymax,cir,sig=340.0,eps=0.012,evdw,energy,potcut,cut=3.2,rad; float phi,teta, alpha,r,tube1[NATOMX*NATOMY][3],delta,tube2[NATOMX*NATOMY][3],dec, ydist1, ydist2, ydist, pb = 0.0; int i,j,natom,x,y,ntube,n=10,m=10,p,q,jmax,ntube1,ntube2,num1,num2,num3,count,k,l,kc; char ch1,ch2,ch3; int nb[]={1, 2, 3, 5, 8, 14, 15, 17, 20, 42, 43, 45, 48, 86, 87, 89, 92, 141, 143, 146}; int im[3000][4], cnt, an[30000], dh[24000][4], dhtmp[4],bnd[3000][2], ancnt; potcut=4*(-pow(cut,-6)+pow(cut,-12)); natom=0; /* generating graphite structure */ for(j=0;jxmin) && (yymin)) { sheet[ntube][0]=x; sheet[ntube][1]=y; ntube++; } } /* for(i=0;ixmin) && (yymin)) { sheet[ntube][0]=x; sheet[ntube][1]=y; ntube++; } } /* for(i=0;i1) if (argv[1][0] == '-') if ((argv[1][1] == 'p')) { // atom pdb tube 1 for(i=0;i 1) { an[ancnt++] = im[cnt][1]; an[ancnt++] = cnt; an[ancnt++] = im[cnt][2]; } if (im[cnt][0] > 2) { an[ancnt++] = im[cnt][1]; an[ancnt++] = cnt; an[ancnt++] = im[cnt][3]; an[ancnt++] = im[cnt][2]; an[ancnt++] = cnt; an[ancnt++] = im[cnt][3]; //ancnt++; } } printf("\n%8d !NBOND: bonds\n",count); for (cnt=1;cnt