particle func; comments