def METHOD_NAME(self):
    n = 5
    _A = np.eye(n) + 0.1 * util.randn([n, n])
    A = linop.MatMul([n, 1], _A)
    x = util.randn([n, 1])
    y = A(x)
    x_lstsq = np.linalg.lstsq(_A, y, rcond=-1)[0]
    d = 1 / np.sum(abs(_A) ** 2, axis=1, keepdims=True).reshape([n, 1])
    x_rec = app.LinearLeastSquares(
        A,
        y,
        solver="PrimalDualHybridGradient",
        max_iter=1000,
        sigma=d,
        show_pbar=False,
    ).run()
    npt.assert_allclose(x_rec, x_lstsq, atol=1e-3)