|
1 | 1 | import time |
2 | 2 | import numpy as np |
3 | 3 |
|
4 | | -from pylops.utils.backend import get_array_module |
| 4 | +from pylops.utils.backend import get_array_module, to_numpy |
5 | 5 |
|
6 | 6 |
|
7 | 7 | def PrimalDual(proxf, proxg, A, x0, tau, mu, y0=None, z=None, theta=1., niter=10, |
@@ -167,7 +167,7 @@ def PrimalDual(proxf, proxg, A, x0, tau, mu, y0=None, z=None, theta=1., niter=10 |
167 | 167 | pg = 0. if type(pg) == bool else pg |
168 | 168 | zx = 0. if z is None else np.dot(z, x) |
169 | 169 | msg = '%6g %12.5e %10.3e %10.3e %10.3e %10.3e' % \ |
170 | | - (iiter + 1, x[0], pf, pg, zx, pf + pg + zx) |
| 170 | + (iiter + 1, np.real(to_numpy(x[0])), pf, pg, zx, pf + pg + zx) |
171 | 171 | print(msg) |
172 | 172 | if show: |
173 | 173 | print('\nTotal time (s) = %.2f' % (time.time() - tstart)) |
@@ -334,7 +334,7 @@ def AdaptivePrimalDual(proxf, proxg, A, x0, tau, mu, |
334 | 334 | pg = 0. if type(pg) == bool else pg |
335 | 335 | zx = 0. if z is None else np.dot(z, x) |
336 | 336 | msg = '%6g %12.5e %10.3e %10.3e %10.3e %10.3e' % \ |
337 | | - (iiter, x[0], pf, pg, zx, pf + pg + zx) |
| 337 | + (iiter + 1, np.real(to_numpy(x[0])), pf, pg, zx, pf + pg + zx) |
338 | 338 | print(msg) |
339 | 339 |
|
340 | 340 | steps = (taus[:iiter + 1], mus[:iiter + 1], alphas[:iiter + 1]) |
|
0 commit comments