Can k-means be used for non normally distributed data? I read a lot of  papers that test k-means with many datasets that are not normally distributed like the iris dataset and get good results.  Since, I understand that k-means is for normally distributed data, why is k-means being used for non normally distributed data?  
For example, the paper below  modified the centroids from k-means based on a normal distribution curve, and tested the algorithm with the iris dataset that is not normally distributed.                                                                          

nearly all inliers (precisely 99.73%) will have point to-centroid distances within 3 standard deviations () from the population mean.

Is there something that I'm not understanding here?


*

*Olukanmi & Twala (2017). K-means-sharp: Modified centroid update for outlier-robust k-means clustering                                           

*Iris dataset
 A: I'm not sure what the question is exactly, but standard deviation isn't just defined for normal distributions. It's a measure relevant for all data distributions. The farther away you are from the mean (in terms of std) the more unlikely this point is to occur. The only thing special about the normal distribution, regarding the standard deviation is that you know the probability of a point occurring within 1, 2 or 3 standard deviations (e.g. you know that a point has a probability of 99.7% to lie within $\pm 3$ standard deviations from the mean).
This however doesn't mean that standard deviation is irrelevant for other (possibly unknown) distributions. It is still relevant, but you don't know the probability associated with it.
A: Here is the full quote:

K-means, being an instance of the Gaussian Mixture Model
  (GMM), assumes Gaussian data distribution [20][26]. It then
  follows that nearly all inliers (precisely 99.73%) will have point-
  to-centroid distances within 3 standard deviations ($\sigma$) from the population mean.

It appears in section IV.A.
The application to the Iris dataset, which, as you note, is not normally, distributed, appears in section V ("Experiments").
I do not see a logical problem with first noting an algorithm's properties under certain assumptions, such as normality, and then testing it in cases where the assumption is not valid.
And of course, k-means can be applied to any dataset. Whether it yields useful results is a different matter.
