An Efficient Saturation Algorithm for Real Time Synchronous Machine Models using Flux Linkages as State Variables