real c(10,4), d(10,4) open(1,file='wfpc2dist_mar94.dat',status='old') read(1,*) do i=1,10 read(1,*) (c(i,j),d(i,j),j=1,4) end do 1 print '(1x,''Enter chip, x, y: ''$)' read *, i, x, y xx = x-400 yy = y-400 dx2dx1 = & c(2,i) + 2*xx*c(4,i) + yy*c(5,i) + 3*xx**2*c(7,i) + & 2*xx*yy*c(8,i) + yy**2*c(9,i) dx2dy1 = & c(3,i) + xx*c(5,i) + 2*yy*c(6,i) + xx**2*c(8,i) + & 2*xx*yy*c(9,i) + 3*yy**2*c(10,i) dy2dy1 = & d(3,i) + 2*yy*d(6,i) + xx*d(5,i) + 3*yy**2*d(10,i) + & 2*xx*yy*d(9,i) + xx**2*d(8,i) dy2dx1 = & d(2,i) + yy*d(5,i) + 2*xx*d(4,i) + yy**2*d(9,i) + & 2*xx*yy*d(8,i) + 3*xx**2*d(7,i) print *, 'area: ' print *, dx2dx1*dy2dy1 - dx2dy1*dy2dx1 pcscale=0.04555 print *, 'scales: mean, x, y' C print *, dx2dx1*pcscale, dy2dy1*pcscale, dx2dy1*pcscale, dy2dx1*pcscale print *, sqrt(dx2dx1*dy2dy1 - dx2dy1*dy2dx1)*pcscale print * print *, sqrt(dx2dx1**2+dy2dx1**2)*pcscale, & sqrt(dx2dy1**2+dy2dy1**2)*pcscale print * goto 1 stop end