Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ dependencies = [
"psutil",
"pymanopt",
"PyWavelets",
"scipy >= 1.10.0",
"scipy >= 1.15.0",
"scikit-learn >= 1.5.0",
"scikit-image",
"setuptools >= 0.41",
Expand Down
3 changes: 1 addition & 2 deletions src/aspire/basis/basis.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,9 @@
import warnings

import numpy as np
from scipy.sparse.linalg import LinearOperator
from scipy.sparse.linalg import LinearOperator, cg

from aspire.image import Image
from aspire.numeric.scipy import cg
from aspire.utils import mdim_mat_fun_conj
from aspire.volume import Volume

Expand Down
6 changes: 4 additions & 2 deletions src/aspire/covariance/covar.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
from functools import partial

import numpy as np
import scipy
from scipy.linalg import norm
from scipy.sparse.linalg import LinearOperator

from aspire.nufft import anufft
from aspire.numeric import fft
from aspire.numeric.scipy import cg
from aspire.operators import evaluate_src_filters_on_grid
from aspire.reconstruction import Estimator, FourierKernel, MeanEstimator
from aspire.utils import make_symmat, symmat_to_vec_iso, trange, vec_to_symmat_iso
Expand Down Expand Up @@ -123,7 +123,9 @@ def cb(xk):
f"Delta {norm(b_coef - self.apply_kernel(xk, packed=True))} (target {target_residual})"
)

x, info = cg(operator, b_coef, M=M, callback=cb, rtol=tol, atol=0)
x, info = scipy.sparse.linalg.cg(
operator, b_coef, M=M, callback=cb, rtol=tol, atol=0
)

if info != 0:
raise RuntimeError("Unable to converge!")
Expand Down
18 changes: 0 additions & 18 deletions src/aspire/numeric/scipy.py

This file was deleted.

3 changes: 1 addition & 2 deletions src/aspire/reconstruction/mean.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,12 @@

import numpy as np
from scipy.linalg import norm
from scipy.sparse.linalg import LinearOperator
from scipy.sparse.linalg import LinearOperator, cg

from aspire import config
from aspire.basis import Coef
from aspire.nufft import anufft
from aspire.numeric import fft
from aspire.numeric.scipy import cg
from aspire.operators import evaluate_src_filters_on_grid
from aspire.reconstruction import Estimator, FourierKernel, FourierKernelMatrix
from aspire.volume import Volume, rotated_grids
Expand Down
17 changes: 1 addition & 16 deletions tests/test_basis_utils.py
Original file line number Diff line number Diff line change
@@ -1,22 +1,7 @@
from unittest import TestCase

import numpy as np

# This can be removed when project requires scipy>=1.15.0
# scipy<1.15.0 provide `sph_harm`
import scipy
from packaging.version import Version

if Version(scipy.__version__) < Version("1.15.0"):
from scipy.special import sph_harm as sp_sph_harm

# This has a different convention from upstream sph_harm_y
def sph_harm_y(j, m, x, y):
return sp_sph_harm(m, j, y, x)

else:
# scipy>=1.15.0 provide `sph_harm_y`
from scipy.special import sph_harm_y
from scipy.special import sph_harm_y

from aspire.basis.basis_utils import (
all_besselj_zeros,
Expand Down
Loading
Loading