A review of heterogeneous nucleation of calcium carbonate and control strategies for scale formation in multi-stage flash (MSF) desalination plants