finished solvegroupsparse, but updating may need to change to speed up iterations