CTF estimation: IndexError: index 0 is out of bounds for axis 0 with size 0

The following error was generated when doing ctf estimation on a set of micrographs that were successfully imported and drift corrected in cryosparc with no errors in the preceding steps. I successfully used the patch ctf estimation on this install in other jobs.

[CPU: 405.7 MB]  Traceback (most recent call last):
  File "cryosparc2_compute/jobs/runcommon.py", line 1685, in run_with_except_hook
    run_old(*args, **kw)
  File "/home/cryosparc_user/software/cryosparc/cryosparc2_worker/deps/anaconda/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "cryosparc2_compute/jobs/pipeline.py", line 153, in thread_work
    work = processor.process(item)
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/run.py", line 115, in cryosparc2_compute.jobs.ctf_estimation.run.run.ctfworker.process
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/run.py", line 118, in cryosparc2_compute.jobs.ctf_estimation.run.run.ctfworker.process
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/run.py", line 119, in cryosparc2_compute.jobs.ctf_estimation.run.run.ctfworker.process
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/patchctf.py", line 66, in cryosparc2_compute.jobs.ctf_estimation.patchctf.patchctf
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/patchctf.py", line 182, in cryosparc2_compute.jobs.ctf_estimation.patchctf.patchctf
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/patchctf.py", line 172, in cryosparc2_compute.jobs.ctf_estimation.patchctf.patchctf.estimate_bg_hack
IndexError: index 0 is out of bounds for axis 0 with size 0

[CPU: 161.5 MB]  Outputting partial results now...

[CPU: 161.5 MB]  Traceback (most recent call last):
  File "cryosparc2_worker/cryosparc2_compute/run.py", line 82, in cryosparc2_compute.run.main
  File "cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation/run.py", line 258, in cryosparc2_compute.jobs.ctf_estimation.run.run
AssertionError: Child process with PID 72182 has terminated unexpectedly!

Looks like this is a bug that has to do with low magnification images- we’ve fixed it, and provided a patch file for you so you can continue processing.

To apply this patch, you’re going to have to do the following:

Download the file from our AWS S3 bucket here: https://structura-assets.s3.amazonaws.com/patch_ctf_v2.14_low_mag_bg_bugfix/patchctf.so

Download directly or use wget via the command line:

wget https://structura-assets.s3.amazonaws.com/patch_ctf_v2.14_low_mag_bg_bugfix/patchctf.so

Replace the file in the following folder on the cryoSPARC worker node(s):
cryosparc2_worker/cryosparc2_compute/jobs/ctf_estimation

Then try running the same job again, and you should be good to go!

Please let me know if you have any questions, and please let me know if this patch works for you.

This solved the problem, thank you.

Hi @stephan. Is it possible that the problem is back with v3.1? I have the identical issue, which does not appear in the “original” mode.
Best,

JP

Hi @jparmache_psu, you are correct, this is a known bug in v3.1. We will include a fix in the next release! Cryosparc 3.1.0 CTF index 1 is out of bounds for axis 0 with size 1