NaNs when using zero weights in shepp Logan demo

Created by: dyang37

Since the PR is already merged I'll open a separate issue for this.

I tested the previous PR that included the NaN fixes on a 3D shepp Logan example with zero weights, but still get NaNs:

************************** Iteration 0  (max. 20) **************************
*  Cost                   = 0.0000000000e+00
*  Rel. Update            = 0.0000000000e+00 % (threshold = 2.0000000000e-02 %)
*  RWFE = ||e||_W/||y||_W = -nan       % (threshold = 0.0000000000e+00 %)
*  RUFE = ||e|| / ||y||   = 1.0000000000e+02 % (threshold = 0.0000000000e+00 %)
* ----------------------------------------------------------------------------
*  1/M ||e||^2_W          = 0.0000000000e+00 = 1/inf
*  weightScaler_value     = 1.0000000000e+00 = 1/1.0000000000
* ----------------------------------------------------------------------------
*  voxelsPerSecond        = 0.0000000000e+00
*  time icd update        = 2.1457672119e-06 s
*  ratioUpdated           = 0.0000000000e+00 %
*  totalEquits            = 0.0000000000e+00
******************************************************************************

************************** Iteration 1  (max. 20) **************************
*  Cost                   = 0.0000000000e+00
*  Rel. Update            = 0.0000000000e+00 % (threshold = 2.0000000000e-02 %)
*  RWFE = ||e||_W/||y||_W = -nan       % (threshold = 0.0000000000e+00 %)
*  RUFE = ||e|| / ||y||   = 1.0000000000e+02 % (threshold = 0.0000000000e+00 %)
* ----------------------------------------------------------------------------
*  1/M ||e||^2_W          = 0.0000000000e+00 = 1/inf
*  weightScaler_value     = 1.0000000000e+00 = 1/1.0000000000
* ----------------------------------------------------------------------------
*  voxelsPerSecond        = 8.0133872599e+04
*  time icd update        = 1.7565979958e+00 s
*  ratioUpdated           = 1.0000000000e+02 %
*  totalEquits            = 1.0000000000e+00
******************************************************************************