* finish the propagate function

* a bug ,can't get the knn neighbor