TypeError: 'numpy.float64' object cannot be interpreted as an index

Hello!
Here is an error I get when I run my first cryosparc project.

Traceback (most recent call last):
File “…/cryosparc-compute/sparcjob.py”, line 288, in
cuda_devs = current_experiment_params[‘cuda_devs’])
File “…/cryosparc-compute/abinit.py”, line 420, in abinit
eps = 1.0/sigproc.rotational_average(H, n.round(radwn))[1:].max()
File “…/cryosparc/cryosparc-compute/sigproc.py”, line 280, in rotational_average
raps = n.bincount(ir, weights=(1-f)*M, minlength=maxRadius) +
TypeError: ‘numpy.float64’ object cannot be interpreted as an index

Do you guys have an idea what’s going on?
I can’t change anything in the code (apparently) to try and see what is happening, so could you?

Thanks,
Victor

Hi Victor,

I believe this error is caused by the numpy version you have installed. numpy >= 1.12 has a bug that causes this so you need numpy=1.11.2 (which is installed by default during cryosparc installation, but may have been upgraded somehow?)

To fix, you can:

eval $(cryosparc env)
conda install numpy=1.11.2

Modification of cryoSPARC code is not permitted under our academic license.

Hope that helps,
Ali

Hi Ali,

thanks for the reply. I’ve downgraded the system numpy installation, but it seems the web interface uses system libraries and not what conda mantains. Anyway, now experiments end with “lost heartbeat” and a segmentation fault, so more digging is required.

UPDATE: I’ve found yet another local python installation that somehow interfered. And now the codebase certificate error is showing again, I must have dug too deep…
I’m going to reinstall the whole thing again.

Thanks,
Victor

Hi Victor,

Some people have reported that some other cryo-EM programs come with a local python installation that overwrites system python paths, glad you figured out what the problem was.
The codebase certificate error may have been a mistake on our side if you were trying 0.3.4. That’s fixed now in 0.3.6.

Thanks and sorry for the trouble!
Ali