prody / ProDy

A Python Package for Protein Dynamics Analysis
http://prody.csb.pitt.edu
Other
417 stars 153 forks source link

PCA Calcmodes #1911

Closed Yago52 closed 2 months ago

Yago52 commented 2 months ago

Some time ago this command works fine, but now a error occurs. Can you help me? prody version 2.4 and tested 2.3.0 also. I tried to calculate the pca from a PDBensemble in this example, but tried with a trajectory also and same error occurs.

pca_close = PCA('close') #iniciar uma instância do PCA
pca_close.buildCovariance(ensemble_all_close, aligned=True) #construir covariância para o ensemble
pca_close.calcModes() #calcular modos (padrão = 20 modos)

error message: Traceback (most recent call last):

File ~/miniconda3/envs/spyder-env/lib/python3.11/site-packages/spyder_kernels/py3compat.py:356 in compat_exec exec(code, globals, locals)

File ~/ownCloud/mestrado/estruturas para projeto/scripts/data_cov3d/ensemble_csv_analise.py:42 pca_close.calcModes() #calcular modos (padrão = 20 modos)

File ~/miniconda3/envs/spyder-env/lib/python3.11/site-packages/prody/dynamics/pca.py:216 in calcModes values, vectors, _ = solveEig(self._cov, n_modes=n_modes, zeros=True,

File ~/miniconda3/envs/spyder-env/lib/python3.11/site-packages/prody/utilities/eigtools.py:88 in solveEig values, vectors = _eigh(M, eigvals, turbo)

File ~/miniconda3/envs/spyder-env/lib/python3.11/site-packages/prody/utilities/eigtools.py:41 in _eigh values, vectors = linalg.eigh(M, turbo=turbo, eigvals=eigvals)

TypeError: eigh() got an unexpected keyword argument 'turbo'

Yago52 commented 2 months ago

I think that this error could happens in the ANM calc modes also.

jamesmkrieger commented 2 months ago

This problem is related to the latest version of scipy. If you go back to scipy 1.13.1 then it should work

Yago52 commented 2 months ago

Thanks.

jamesmkrieger commented 2 months ago

We have fixed the installation in the github version and this will be fixed for pip/pypi and conda-forge installation when we make the release