Download SAXS Software

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Cooley–Tukey FFT algorithm wikipedia , lookup

Factorization of polynomials over finite fields wikipedia , lookup

Fisher–Yates shuffle wikipedia , lookup

Transcript
SAXS Scatter Error Analysis for
Optimized Algorithm
CHRIS WILCOX
2/21/2008
Algorithm Status
 New benchmark: 1000 atoms in molecule, random
atom types (O,S,N,H,P,…) and distances (0..10.0).
 Original code, no redundant calculations, no
special optimizations:

1000 atoms = 44s, 5000 atoms = 1100s (estimated).
 Optimized code, uses lookup table for sin(f)/f,
where f = (4 PI distance step):
 1000 atoms = 17s, 5000 atoms = 442s (estimated).
 What is the numerical accuracy of the algorithm,
and is it worth pursuing?
Lookup Table Errors
 Compare distances between lookup table
entries (max error), but average is smaller.
 Steps with lookup table resolution of 0.001
appear to be similar in magnitude, i.e. ~0.001.
 Error is multiplied by 2.0 * f0atom1 * f0atom2,
causes 2 orders of magnitude increase in error.
 Per step, 103 atoms means ~106 terms, which
could result in an error term of up to 105.
\
Relative errors are better, but how much?
Lookup Table Resoluion
 Tried lookup table resolution of 0.01, 0.001,
0.0001, cover max distance * step (~200.0).
 Table size is 2 * 104, 2 * 105, and 2 * 106.
corresponding to the resolutions above.
 Each increase of an order of magnitude of
resolution achieves 10X better accuracy.
 Both absolute and relative measures scale
according to the resolution.
 Apparently there isn’t some nonlinear error
behavior in the accumulation of intensity.
Intensity Curve Differences
 Compare intensity curves generated on random
molecule, original to optimized algorithm.
 Minimum absolute error -9980, maximum
absolute error 7928.
 Minimum relative error -0.0035, maximum
relative error 0.0035 (symmetric around zero).
 Mean absolute error is 210, mean relative error
is ~0.00024.
Less than .02 percent relative error, curves
look the same, seems good enough?