A charge-flipping algorithm to handle incomplete data.