/* Driver for routine anneal */ #include #define NRANSI #include "nr.h" #include "nrutil.h" #define NCITY 10 int main(void) { int i,ii,*iorder; long idum=(-111); float *x,*y; iorder=ivector(1,NCITY); x=vector(1,NCITY); y=vector(1,NCITY); for (i=1;i<=NCITY;i++) { x[i]=ran3(&idum); y[i]=ran3(&idum); iorder[i]=i; } anneal(x,y,iorder,NCITY); printf("*** System Frozen ***\n"); printf("Final path:\n"); printf("%8s %9s %12s\n","city","x","y"); for (i=1;i<=NCITY;i++) { ii=iorder[i]; printf("%4d %10.4f %10.4f\n",ii,x[ii],y[ii]); } free_vector(y,1,NCITY); free_vector(x,1,NCITY); free_ivector(iorder,1,NCITY); return 0; } #undef NRANSI