Turns out that the way I was using yt's TimeSeries commands and iterating through the plotsfiles was causing me to run out of memory. I've changed the routine now to reading the files in turn and overwriting the previous arrays. I also generate plots along the way now so that I can get some output at least, even if it crashes or gets interrupted.