I had a bug which was caused by code which pulled out just the real component of a complex vector, using
Ey_fourier[1:fft_size_half,0]
This ends up being quite different in function from
Ey_fourier[1:fft_size_half]
though it's only different by 2 characters (,0). There need to be routines to explicitly pull out just the real part.
realPart(Ey_fourier[1:fft_size_half]) is now available.