Hi all, when I try to run a homogeneous reconstruction of a class obtained from 3D classification (beta),I get the attached error - am I doing something wrong?
File "cryosparc_worker/cryosparc_compute/run.py", line 85, in cryosparc_compute.run.main
File "cryosparc_worker/cryosparc_compute/jobs/refine/newrun.py", line 1088, in cryosparc_compute.jobs.refine.newrun.run_homo_reconstruct
File "cryosparc_worker/cryosparc_compute/engine/newengine.py", line 2960, in cryosparc_compute.engine.newengine.reconstruct
IndexError: list index out of range```
Ok, so using the low level results interface to replace the alignments with the ones from the input refinement (which should be the same?) allows reconstruction to proceed successfully, in case that is a clue…
@olibclarke Hm, checking the error line number, I suspect this is because the particles aren’t split into gold-standard halves during 3D classification, so reconstruction won’t find both halves. If you run the job with “Force re-do GS split” does it work? If so, we’ll look into better error messages for this scenario.
Force redo GS split was required going to local refinement, although the error message made that obvious. I noticed performing homogeneous refinement with particles from 3D class with the volume for that class gave junk while using the original volume (input to 3D class job) gave a much better result. I’m not sure why as the volumes are nearly the same. Haven’t tested extensively, yet.
Yep it works with “Force GS split”, thanks - but why is it not maintaining the split that was already there? These particles came from 3D classification, but before that they came from an NU-refine job - shouldn’t they inherit the GS split from that job?
@olibclarke@user123 Thanks for noting this – this is indeed an oversight in the 3D Class job (we were not passing through the split key appropriately). We have a fix coming for this in the next patch.