iqtree / iqtree2

NEW location of IQ-TREE software for efficient phylogenomic software by maximum likelihood http://www.iqtree.org
GNU General Public License v2.0
244 stars 57 forks source link

IQTree::optimizeNNI(bool): Assertion `curScore > appliedNNIs.at(0).newloglh - 0.1' failed. #230

Open OliveiraDS-hub opened 4 months ago

OliveiraDS-hub commented 4 months ago

Dear developers,

I'm facing an issue with IQtree (last version). This is my commandline: nohup iqtree2 -s AURISMAR2.fas -alrt 1000 -bb 1000 -m Dayhoff --mem 60G -T 16 -st AA -t BIONJ &

And after quite long time running, I got several warning messages and this error:

Iteration 20 / LogL: -27103400.810 / Time: 61h:35m:59s WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for lh-derivative ERROR: iqtree.cpp:3124: virtual pair<int, int> IQTree::optimizeNNI(bool): Assertion `curScore > appliedNNIs.at(0).newloglh - 0.1' failed. ERROR: STACK TRACE FOR DEBUGGING: ERROR: ERROR: IQ-TREE CRASHES WITH SIGNAL ABORTED ERROR: For bug report please send to developers: ERROR: Log file: AURISMAR2.fas.log ERROR: Alignment files (if possible)

Importantly, my alignment has 2,751 sequences from different strains and the alignment has very high homology ~98%. I don't know if this biological background could introduce any error on IQtree's processing.

I hope to hear from you soon. Thank you very much!

Best

bqminh commented 4 months ago

Thanks for reporting. Does it help if you add --kernel-nonrev option to the command line?

OliveiraDS-hub commented 4 months ago

Dear @bqminh

I've used the parameter --kernel-nonrev, but I still had the same error message:

WARNING: Numerical underflow for lh-derivative WARNING: Numerical underflow for non-rev lh-branch Noname WARNING: Numerical underflow for non-rev lh-branch Noname ERROR: iqtree.cpp:3124: virtual pair<int, int> IQTree::optimizeNNI(bool): Assertion curScore > appliedNNIs.at(0).newloglh - 0.1' failed. ERROR: STACK TRACE FOR DEBUGGING: ERROR: ERROR: *** IQ-TREE CRASHES WITH SIGNAL ABORTED ERROR: *** For bug report please send to developers: ERROR: *** Log file: AURISMAR2.fas.log ERROR: *** Alignment files (if possible)

Any other advice on it?

bqminh commented 4 months ago

I don't know exactly. I suspect it's a combination of bad model (Dayhoff - don't know why you insist on this "outdated" model) with very many sequences. I suggest just let ModelFinder find the best matrix. Moreover, is there any reason to use BIONJ?

jaredbernard commented 3 months ago

Hi, @bqminh, I am getting a similar problem. I am trying to use iqtree 2.3.5 to build a codon-based model with ~800 sequences. I read there was some issue with the numerical underflow with codon models in the older versions of iqtree. Do you think that is the problem I'm having? I need to find a way to construct a codon model. Do you have any ideas for how to resolve the error?

ERROR: iqtree.cpp:3124: virtual std::pair<int, int> IQTree::optimizeNNI(bool): Assertion `curScore > appliedNNIs.at(0).newloglh - 0.1' failed.
ERROR: STACK TRACE FOR DEBUGGING:
ERROR: 1   funcAbort()
ERROR: 2   ()
ERROR: 3   ()
ERROR: 4   raise()
ERROR: 5   abort()
ERROR: 6   ()
ERROR: 7   IQTree::optimizeNNI(bool)
ERROR: 8   IQTree::doNNISearch(bool)
ERROR: 9   IQTree::doTreeSearch()
ERROR: 10   runTreeReconstruction(Params&, IQTree*&)
ERROR: 11   CandidateModel::evaluate[abi:cxx11](Params&, ModelCheckpoint&, ModelCheckpoint&, ModelsBlock*, int&, int)
ERROR: 12   CandidateModelSet::test(Params&, PhyloTree*, ModelCheckpoint&, ModelsBlock*, int, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, bool, bool)
ERROR: 13   runModelFinder(Params&, IQTree&, ModelCheckpoint&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
ERROR: 14   startTreeReconstruction(Params&, IQTree*&, ModelCheckpoint&)
ERROR: 15   runStandardBootstrap(Params&, Alignment*, IQTree*)
ERROR: 16   runPhyloAnalysis(Params&, Checkpoint*, IQTree*&, Alignment*&)
ERROR: 17   runPhyloAnalysis(Params&, Checkpoint*)
ERROR: 18   main()
ERROR: 19   ()
ERROR: 20   __libc_start_main()
ERROR: 21   ()
ERROR: 
ERROR: *** IQ-TREE CRASHES WITH SIGNAL ABORTED
ERROR: *** For bug report please send to developers:
ERROR: ***    Log file: PREF.log
ERROR: ***    Alignment files (if possible)
/data/jwd05e/main/072/180/72180680/tool_script.sh: line 26: 3247269 Aborted                 (core dumped) iqtree --prefix PREF -T ${GALAXY_SLOTS:-10} --redo -s '/data/dnb10/galaxy_db/files/a/d/8/dataset_ad825bcc-bca4-4448-b598-f788dd800703.dat' --seqtype CODON --seed '314159' --keep-ident -m 'TEST' --msub 'nuclear' --cmin '2' --cmax '10' --merit 'AICc' -mtree --modelomatic --gamma-median --opt-gamma-inv --rate --ninit '100' --ntop '20' --nbest '5' --nstop '100' --radius '6' --perturb '0.5' -abayes --sup-min '0.0' --nmax '1000' --nstep '100' --bcor '0.99' --beps '0.5' --boot '1000'
..
Nonsynonymous/synonymous ratio (omega): 0.039
Transition/transversion ratio (kappa): 1.404
WARNING: Numerical underflow for lh-derivative
Nonsynonymous/synonymous ratio (omega): 0.039
Transition/transversion ratio (kappa): 1.404
WARNING: Numerical underflow for lh-derivative
Nonsynonymous/synonymous ratio (omega): 0.039
Transition/transversion ratio (kappa): 1.404
WARNING: Numerical underflow for lh-derivative
Estimate model parameters (epsilon = 0.100)
BETTER TREE FOUND at iteration 160: -63884.300
Iteration 160 / LogL: -63884.300 / Time: 3h:9m:28s (1h:56m:27s left)