centre-for-microbiome-research / GroopM

Metagenomic binning suite
GNU General Public License v3.0
29 stars 18 forks source link

Unexpected error: <type 'exceptions.FloatingPointError'> while running GroopM core #29

Open bastian-wur opened 6 years ago

bastian-wur commented 6 years ago

Hi everyone,

I recently downloaded and installed GroopM (30.11.2017, cloned from here). I've now run it on my data, GroopM parse works fine. But afterwards I ran GroopM core (no parameters used), which breaks down with a division by zero error.

Output is the following:

    Start automatic bin refinement
    203063 contigs across 943 cores ( 96.33 % )
    Identifying possible chimeric bins
    Identified 40 likely chimeric bin(s), removed 10 small chimeric bin(s)
    827,838,862,864,873,908,909,915,924,939
    { THIS: 0:00:01.207 || TOTAL: 7:09:44.657 }
    Merging similar bins (903) with kCut 38.82 (+/-7.741) cCut 0.72 (+/-0.535)
Unexpected error: <type 'exceptions.FloatingPointError'>
Traceback (most recent call last):
  File "/exports/mm-hpc/bacteriologie/bastian/tools/GroopM/bin/groopm", line 421, in <module>
    GM_parser.parseOptions(args)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/groopm.py", line 138, in parseOptions
    gf=gf)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/cluster.py", line 216, in makeCores
    self.RE.refineBins(self.timer, auto=True, saveBins=False, plotFinal=prfx, gf=gf)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/refine.py", line 158, in refineBins
    graph = self.autoRefineBins(timer, makeGraph=gf!="")
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/refine.py", line 474, in autoRefineBins
    self.mergeSimilarBins(graph=graph, verbose=False)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/refine.py", line 571, in mergeSimilarBins
    mergers = self.findMergeGroups(kCutMedian, kCutStd, cCutMedian, cCutStd, verbose=verbose)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/refine.py", line 631, in findMergeGroups
    retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/bin.py", line 352, in getBoundingKEllipseArea
    (A, center, radii, _rotation) = ET.getMinVolEllipse(KPCAs, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 112, in getMinVolEllipse
    (A, center, radii, rotation) = self.getMinVolEllipse(PP, retA=True)
  File "/exports/mm-hpc/bacteriologie/bastian/tools/anaconda3/envs/py27/lib/python2.7/site-packages/groopm/ellipsoid.py", line 118, in getMinVolEllipse
    step_size = (maximum - d - 1.0) / ((d + 1.0) * (maximum - 1.0))
FloatingPointError: divide by zero encountered in double_scalars

Any idea what the issue could be? Thanks, Bastian

wwood commented 6 years ago

Hi Bastian, Hmm, I'm not sure what the issue might be. However, I would suggest instead trying the next version of GroopM, which is (currently) available at https://github.com/timbalam/GroopM

Good luck. ben