I've upgraded the particle system to implement aurora. As comet tail, aurora is based on axis-aligned sprites, animated in the vertex shader. Every sprite is rendered as a long oval while viewing it from the side, and is round while viewing from the top or bottom (planet surface). SpaceEngine can't use an iterative simulation for moving particles, so particles in aurora, as in comet tail, are moved using equations; that allows computing the position of the particle at any moment of time. For aurora, it is a few octaves of Perlin noise, computed directly in the vertex shader. Rendering of thousands of transparent sprites is an extremely big load to the graphics card, so to increase performance, aurora is rendered to a low-res framebuffer when the camera is close enough. The same system is used for galaxies and nebulae.
Added: this pre-release video is a nice demonstration of aurora animation:
Note that parts of aurora are moving with constant speed, that suddenly change its value or direction. This is because current implementation of Perlin noise is based on textures (texture noise), which are linearly interpolated. Some fast textureless noise will improve aurora animation.
Screenshots from the same ice planet: