A novel implementation of noise analysis in general-purpose PDE-based semiconductor device simulators