Correct handling of zero/negative intensities in FCR; tidy up FCR code