Local Refinement Error

Hello, I am getting the following error when I try to run a local refinement job.

TypeError: unsupported operand type(s) for /: ‘NoneType’ and ‘float’

Hi @stavros,

Can you please provide us with more information? You can read this post for help:

1 Like

Apologies, I had posted that in previous posts.

Current cryoSPARC version: v2.11
Cuda: cuda-10.1
Job Log:

> Project P4 Job J262
> Master headnode Port 38002
> ===========================================================================
> ========= monitor process now starting main process
> ========= monitor process now waiting for main process
> MAIN PID 33138
> local_refine.run cryosparc2_compute.jobs.jobregister
> ========= sending heartbeat
> ========= sending heartbeat
> ========= sending heartbeat
> ========= sending heartbeat
> ========= sending heartbeat
> ========= sending heartbeat
> cryosparc2_compute/plotutil.py:237: RuntimeWarning: divide by zero encountered in log
>   logabs = n.log(n.abs(fM))
> ***************************************************************
> Running job  J262  of type  naive_local_refine
> Running job on hostname %s slurmcluster
> Allocated Resources :  {u'lane': u'slurmcluster', u'target': {u'lane': u'slurmcluster', u'qdel_cmd_tpl': u'scancel {{ cluster_job_id }}', u'name': u'slurmcluster', u'title': u'slurmcluster', u'hostname': u'slurmcluster', u'qstat_cmd_tpl': u'squeue -j {{ cluster_job_id }}', u'worker_bin_path': u'/cm/shared/apps/cryosparc2_stavros/cryosparc2_worker/bin/cryosparcw', u'qinfo_cmd_tpl': u'sinfo', u'qsub_cmd_tpl': u'sbatch {{ script_path_abs }}', u'cache_path': u'/ssd/cryosparc2_cache_stavros', u'cache_quota_mb': None, u'script_tpl': u'#!/bin/bash\n## What follows is a simple SLURM script:\n\n#SBATCH --job-name=cryosparc_{{ project_uid }}_{{ job_uid }}\n#SBATCH --partition=q2\n#SBATCH --output={{ job_log_path_abs }}\n#SBATCH --error={{ job_log_path_abs }}\n{%- if num_gpu == 0 %}\n#SBATCH --ntasks={{ num_cpu }}\n#SBATCH --cpus-per-task=1\n#SBATCH --threads-per-core=1\n{%- else %}\n#SBATCH --nodes=1\n#SBATCH --ntasks-per-node={{ num_cpu }}\n#SBATCH --cpus-per-task=1\n#SBATCH --threads-per-core=1\n##SBATCH --gres=gpu:{{ num_gpu }}\n#SBATCH --gres-flags=enforce-binding\n{%- endif %}\n\n{{ run_cmd }}\n\n', u'cache_reserve_mb': 10000, u'type': u'cluster', u'send_cmd_tpl': u'{{ command }}', u'desc': None}, u'license': True, u'hostname': u'slurmcluster', u'slots': {u'GPU': [0], u'RAM': [0, 1, 2], u'CPU': [0, 1, 2, 3]}, u'fixed': {u'SSD': True}, u'lane_type': u'cluster'}
> **** handle exception rc
> set status to failed
> Traceback (most recent call last):
>   File "cryosparc2_worker/cryosparc2_compute/run.py", line 78, in cryosparc2_compute.run.main
>   File "cryosparc2_worker/cryosparc2_compute/jobs/local_refine/run.py", line 252, in cryosparc2_compute.jobs.local_refine.run.run_naive_local_refine
> TypeError: unsupported operand type(s) for /: 'NoneType' and 'float'
> ========= main process now complete.
> ========= monitor process now complete.

I hope this will provide the necessary information.

Hi @stavros,
Can you list any non-default parameters that you set for this job?


  • Changed the number of Final extra passes to 3
  • Selected Non Uniform Refinement

All other parameters are default.


  • Local rotation search extent (degrees) was set to null

Reset that to the default value and now it is running.