[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [ATM] Re: FigureXP and Foucault test Analysis
Hello Jan,
thanks for the mirror-data.
With my program, I get the same results as you and James:
Waveerror P-V: 1/4 Lambda
RMS: 20 mn
Strehl: 0,79
And now the interesting question, why my program differs so much from
the other two (FigureXP ans Sixtest).
All data reduction programs performs essentially the following steps for
calculating P/V Waveerror, RMS and Strehl:
First step: Calculating the mirror slope for the measured zones.
-------------------------
In dependence wether the lightsource is fixed or moving, slightly
different formulas are used for calculating the mirror's slope. Sixtest
uses a more general formula as FTA and FigureXP that allowes you to
place the lightsource anywhere on the optical axis. In FigureXP and FTA
the lightsource must be placed exactly at the radius of curvature if the
lightsource is fixed. Besides that difference all programs give the same
results for the slope if you input the same values.
As a result you get the mirror's slope for each measured zone.
Second step: Interpolating the slope values to get a function for the
mirror's slope
-------------------------------
As a result from step one you get single slope values for each mirror
zone. The problem is, that you can't describe the mirror's slope with
single data poins. So you have to interpolate the slope-values to get a
function for the mirror's slope. And here, all programs uses different
methods for interpolation:
- Sixtest uses zernike coefficients
- FigureXP uses linear splines
- FTA uses cubic splines
In dependency of the interpolation-method you get different results for
one and the same mirror. Whereas I am not familar with zernike
coefficients I can explain the difference between linear and cubic splines:
a) Linear Splines Interpolation
Linear Splines represents the most simple form of interpolation: The
data-points are connected with straight lines. If you measure your
mirror with 5 zones you get 5 linear functions which describes the slope
of the mirror. 2 minor disadvantages of this method:
- The slope of the mirror is of course not linear.
- You have steps in your function for the mirror-slope which in reality
doesn't exists.
For your purpose this two disadvantages are neglectable, especially if
your mirror is nearly perfect. This is because the slope-function for a
perfect parabola is a linear function. If your mirror is away from
perfection, this method MAY tend to underestimate the mirror's error a
littlebit. This is explained in the next step.
I have experimented with linear splines. The reason that I refrained
from that method is that I wanted to simulate shadowgrams in my program.
And this was impossible with that method of interpolation. Simulating a
shadowgram for a perfect sphere using linear splines gives me the
following picture:
www.foucault-test-analysis.de/pictures/vanGastel_3.jpg
You see the problem: With linear functions I am not able to merge the
lightrays from the mirror in one single point. You clearly see the steps
which I have mentioned above.
The interpolated slope-function was simply not smooth enough to simulate
shadowgrams so I dicided to dig in
b) Cubic Spline Interpolation
The data-points are connected with cubic-functions (f(x) = a*x^3 + b*x^2
+ c*x + d) in that way that the Graph of that functions gives a very
smooth curve with no steps. That means: the two disadvantages of the
first method are removed. With that kind of interpolation the rays from
the mirror merged in one single point for a perfect sphere and gives me
perfect shadowgrams.
Third Step: Integrating the slope-function to get a function which
describes the mirror-profile
-------------------------------------------------
To obtain a function for the mirror-profile you have to integrate the
slope-function from step two. The results depends on the method used for
slope-interpolation. If you have a faulty mirror with zones your
mirror-profile with cubic-splines will be higher than the mirror-profile
with linear splines. This is because the slope-function with
cubic-splines have much more "swing" than the slope-function with
linear-splines (sorry, can't explain that better...).
And this is my explanation that FigureXP gives better results for your
mirror than my program.
Fourth step: finding the equation for the reference-parabola
---------------------------------
The fourth step is to find an equation for the reference-parabola (f(x)=
a*x^2 + b) that the root-mean-square
( integral (( f(x) - mirrorprofile(x) )^2 * x) dx ) is minimized.
(Attention: This formula is NOT complete. See Jim Burrows page for the
complete formula).
In dependency, wether the above function can be integrated or not
(especially for zernike I don't know), this integration-part is an
additional source that the results may differ from the very same mirror.
If you use one of the many approximation-methods for solving integrals,
the results may differ a littlebit.
In FTA the integrals are solved without using approximation-methods, for
the other programs I dont' know.
Fifth step: Calculating the strehl-ratio
--------------------------
As a result from step four you get the root mean square. On the basis of
that result the strehl ratio may be calculated with one of the two
aproxximation-methods, which are shown on Jim Burrows website:
strehl-ratio = 1 - (2*PI*RMS / wavelength)^2
strehl-ratio = 1 / exp((2*PI*RMS / wavelength)^2)
In addition, there exists an exact and complicated formula for the
strehl-ratio (see Jim Burrow's website...) which I haven't used up to now.
My program uses the first formula whereas I assume that FigureXP uses
the second one. Especially for "bad" mirrors "my" strehl-ratio goes
negativ whereas the second formular returns always positive values.
Three further sources for different mirror-results ...
For the reason that the interpolation-method is the main reason for
different results I have modified my program a littlebit so that it uses
linear splines for interpolation of the mirror slope.
And hey, presto, here are the results:
www.foucault-test-analysis.de/pictures/vanGastel_1.jpg
www.foucault-test-analysis.de/pictures/vanGastel_2.jpg
As you see: If I use the same technics as FigureXP I get the same graphs
and results as FigureXP.
If you like, I can easily build you a version of my program using linear
splines :-)
And if I have understood zernike some day and implement that algo, I
expect my program to show the same values as sixtest.
Perhaps I present a combobox where you can choose between the three
methods... and a combobox where you can choose the method for the
strehl-ratio...
Then you have many, many, many possiblities for getting different
results for the very same mirror.
Stays the question: Which method is the best ?
- zernike ?
- linear splines ?
- cubic spiles ?
- ..... ?
Sorry, I can't give you a satisfying answer. I can only tell you the
reason that I decided myself for cubic splines (see above). Perhaps Jim
Burrows can give you a definite answer ?
My opinion is that all three algos are suitable for mirror-calculation
and show compareable results if the mirror is of good quality.
My program shows for your mirror poorer results than the other two
programs. But that doesn't mean that my program is "wrong". It is one
result out of three. And somewhere in the middle lies the truth.
In my opinion the false starting point are comments something like that:
>> While I trust Sixtests the most, FigureXP seems to be Provide a simular answer.
>> However FTA is substantially different, and I have no Idea why. All three
>> programs were feed the same data.
>> Historicly Sixtests and FigureXP have provided results on different optics,
>> while not exactly the same, the results were substantially simular. However, I
>> can not precule that both Sixtest and FigureXP could be inaccurate, but....
WHY to trust Sixtest the most ?
Because Jim Burrows was the first who wrote a program on that subject ? Yes, indeed. Jim Burrows has great credit in the community. His website is the very basis for my program.
But he didn't tell which interpolation-method is the best. As I remember, he mentioned quadratic and cubic splines as well on his site.
In my opinion this is not a matter of TRUST, it's a matter of PROOF :-)
Is there any mathematical proof that zernike is "the champion" for that kind of task ?
If I know for sure that zernike IS the best, I will implement that algo. Algorithms that provide just similar results are then just uninteresting.
As I see it, there are many ways to rome, and none of them is "inaccurate".
So the results of my program for your mirror are:
Waveerror P-V: 1/4 Lambda
RMS: 20 mn
Strehl: 0,79
Three different programs with three different algorithms and as far as I now no proof which algo is better suited.
As I offered you above: If you are convinced for some reason that linear splines are more trustworthy, I will happily build you a version (5.0A) using linear splines.
Regards,
Andreas
www.foucault-test-analysis.de
_______________________________________________
ATM mailing list http://www.atmlist.net/