kiharalab/DiffModeler

max() arg is empty sequence

Closed this issue · 3 comments

Hello. I have been able to successfully run the example and I have setup blast and a local rcsb/af db according to the readme.
However, I am getting the following error now, any advice? Is it something with the contour?:

python3 main.py --mode=2 -F=volume_map.mrc -P=aaa_complex.fasta --config config/diffmodeler_local.json --contour=2 --gpu=0 --resolution=6 --output aaa
DB search finished! Match relationship  {'B': 'redacted', 'C': 'redacted', 'E': 'redacted', 'A': 'redacted', 'D': 'AFDB:redacted'}
/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/A existed
/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/B existed
/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/C existed
/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/D existed
/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/E existed
collecting finish: fitting dict:  {'/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/B.pdb': ['B'], '/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/C.pdb': ['C'], '/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/E.pdb': ['E'], '/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/A.pdb': ['A'], '/home/ec2-user/SageMaker/DiffModeler/aaa/single_chain_pdb/D.pdb': ['D']}
/home/ec2-user/SageMaker/DiffModeler/aaa/infer_diffusion created
/home/ec2-user/SageMaker/DiffModeler/aaa/infer_diffusion/Input created
map density range: 0.000000 0.503859
map hist log percentage 98:  0.47614634
detected mode mapc 1, mapr 2, maps 3
Origin: [1.0, 1.0, 1.0]
given contour 2.000000
revised contour 4.200389
Preparing Input:  |################################| 512/512
In total we prepared 0 boxes as input
dataset loading finished with 0 boxes!
loading model message:  <All keys matched successfully>
/home/ec2-user/SageMaker/DiffModeler/aaa/infer_diffusion/diffusion_box created
/home/ec2-user/SageMaker/DiffModeler/aaa/infer_diffusion/diffusion_map created
Traceback (most recent call last):
  File "main.py", line 121, in <module>
    diff_trace_map = diffusion_trace_map(save_path,cur_map_path,params)
  File "main.py", line 60, in diffusion_trace_map
    diff_trace_map=infer_diffem(cur_map_path,diffusion_dir,params)
  File "/home/ec2-user/SageMaker/DiffModeler/predict/infer_diffusion.py", line 63, in infer_diffem
    max_id = int(max(id_sort))
ValueError: max() arg is an empty sequence

Thank you so much for your interest for our work!
Actually, I thought you provided a contour level with a standard deviation definition. However, in our pipeline, this should be an absolute density threshold, not the standard deviation. Your map density range is 0-0.5. Therefore, a valid contour should have a value between 0 to 0.5. You can visualize the map via Chimera or Coot , and provide a contour that can successfully remove the outside very noisy regions.
To save your time, you can also directly run any your maps on our server: https://em.kiharalab.org/algorithm/DiffModeler.

Thanks for the insight. I have tried different contours from 0 to .5; including 0 and I still get the same error. So maybe this is something else.

Could you please provide the new log output? Also, please clear the directory to run the script in case some cached files influence the results. Let me know if you still have any problems.