I am calculating the corrected image circle for the APASS systems, based on the patterns I see on the flatfields. I have marked x,y positions for four points on each of the OTA images, and would like to find the radius and center coordinates of the circle that passes through these points. Anyone want to make the calculation?

C3B

409,3767

3657,455

3737,3519

289,447

C4V

337,3687

3785,3767

3769,311

297,295

I may need to do this for another pair of circles sometime later, so don't throw away your code!

Arne

You're talking plane geometry here, right? Have you seen this done before? Three points (not on a straight line) define a unique circle but I doubt there is a general solution for 4 points. On the other hand I have (in the distant past) calculated a best-fit in a least squares sense. Would that fit your needs ( I would have to knock off a LOT of rust ).

Jim Roe [ROE]

Hi Jim,

Yes, plane geometry, and these are empirical measurements with some judgement error, so a least squares solution is what I am looking for. I figured 4 points (one in each quadrant of the detector) would be helpful.

Arne

Jean Meeus' "Astronomical Algorithms", pg 119, has the algorithm to find the smallest circle include three points on the sky (planetary conjunction type stuff).

Brian D. Warner

We can calculate (fairly easily) the center of a circle determined by three points. With four points there are 4 different combinations of three only. We could calculate all four of these centers and do a "center of mass" on them as an estimate of the "best" center. Using that center we can calculate the distance to each point and average those for a "best" radius. I wouldn't want to defend a Mastser's thesis with that, but would it serve your purpose?

Jim Roe

I was thinking some along the same lines Jim but even cruder. Since Arne evidently eyeballed the points to lie on a circle, just find a circle that fit any three points (easy) and adjust it by eyeball to fit all 4. Your approach is probably better.

No matter how you do it, a true least squared fit is nasty if you do it by hand. Evidently MatLab has the ability to do it but I have no idea how.

Jim Jones

Arne

Is this what you are looking for?

http://www.ulb.ac.be/assoc/bms/Bulletin/sup962/gander.pdf

Jim Jones

Is there some magic in using quadrants? Why not just use 3 points?

Just sayin'

Jim Roe

If I understand your question correctly, I get a circle center of (1911,1991) and a radius of 2354 pixels, to the nearest pixel or so, for your first set of numbers. More precisely, the x-coordinate of the center should be 1910.5 pixels, and the radius 2353.5 pixels, but I suspect you want the answer in whole pixels. The circle misses each point by about 28 pixels in radius. Is this correct, or did I really goof?

John Centala

I created a LibreOffice spreadsheet that will calculate the 3 point solution to each of the 4 permutations of 4 data points. It then averages the x and y of the centers and the radii. It is available to whomever would like it.

Here are the results for the two data sets

Data set #1

Xavg

1961.4135742344

+/-

-9.0337356185

Yavg

2040.5162933772

+/-

-9.4646045294

Ravg

2315.9726154835

+/-

-6.5563813064

Data set #2

Xavg

2063.0069988802

+/-

-43.7332635044

Yavg

2008.6708135109

+/-

-44.1884649781

Ravg

2434.6225288002

+/-

-31.0926593647

Jim Roe [ROE]

Jim,

When I tried my method on the second set of data, I got the center at (2063, 2009), R=2434, in agreement with your more precise calculation, so I obviously goofed on the first set of numbers, and I'm now not even sure about the second set.

John Centala

I hope everyone recognizes the stated precision (to 10 decimal places!) is WAY overstated. I just cut and pasted the values from the spreadsheet, figuring no one on this forum would be misled.

Jim Roe [ROE]

Jim,

OK, I agree with your first set of numbers also. My mistake was using (289, 247) instead of (289, 447) for one of the coordinates.

John Centala

Thanks for the prompt responses! I think I now have enough information for my immediate purposes.

Arne

After puzzling over my process I decided that a least squares approach could be implemented easily in a modern spread sheet that would give a semblance of greater certainty in the sense that the average deviation of each point from the circle would be minimized. The idea is to start with a reasonable estimate of the center of the circle (x,y), to calculate the average distance of the points from this trial center with its standard deviation. Then, at least in Libre Office Calc, to run the Tools>Solver routine which iterates the initial (x,y) values of the center while watching the standard deviation cell. When a minimum has been reached for the standard deviation the process stops, leaving the final values in place. Here are the refined values (actually pretty close to the previous estimates):

Case #1

Xavg

1961.5

Yavg

2041.2

Ravg

2315.9

Standard deviation = 6.5

Case #2

Xavg

2062.7

Yavg

2009.4

Ravg

2434.0

Standard deviation = 31.1

Jim Roe [ROE]