
What is that you're looking at?
Now I get to explain my usual visualization method. The data at hand is, typically, some complex valued scalar (a vector when we do EM waves) density on a surface. In this case, it's the time-harmonic component of the air pressure at the surface of a body. Useful features to see are local smoothness (of utmost importance!), magnitude (esp local maxima and minima), and phase (I'm especially keen on that one).
In order to generate the plot you see, we displace the surface in the outward-normal direction proportionally to the magnitude of the density (or field) at that point on the surface. We map values in the complex plane to colors by equating a standard HSV colormap (it's periodic) to the unit circle, and approaching either black or a shade of gray at the zero point.
These plots are great! They allow you to quickly see the lobe structure without losing information about the phase -- two peaks of opposing color can instantly be recognized as having opposite sign. More complicated examples involve recognizing conjugates, phase changes and other partial features without checking each possibility one-by-one on the large numerical datasets.
Anyway, the happy-happy comes from the fact that this data was computed very quickly (about 10 minutes, one machine) and, more importantly, has a reasonably small error (~2% on the surface). Some code that I thought still needed a lot of optimization ended up taking exactly the time it was supposed to take (okay, modulo a known set of symmetries that aren't yet accounted for).

2 comments:
OK, but where are the random cracks?
Them's fighting words!
Post a Comment