Herewith a small program I wrote a while ago and some documentation on how it’s built up.
The Matlab program can calculate the scattering pattern of a superellips of revolution. I hope it is of some use to some of you, if only for satisfying curiosity. The program runs in Matlab, opens a GUI, which requires the input of five variables.
The first two dictate the limits in q that one is interested in. The minimum q value determines the maximum size of the real-space box, and the distance between the minimum q and the maximum q determines the pixel resolution in real space. Good values for these are, for example, 0.01 for the minimum q and 2 for the maximum q.
The three other variables determine the size and shape of the superellips-of-revolution. The superellips is generated with width a (in Angstrom), height b, and curvature r. The ellips is then revolved around the vertical axis to generate the ellips-of-revolution. A nice value for these are, for example, a=20, b=100, r=4.
Please see the attached documentation and have fun running the program. The program is distributed under the GPL V3 license. geomsuperell.pdfsuperellips-of-revolution scattering pattern simulator