|-weak_id||Identity threshold. Must be less than -id.|
|-weak_evalue||Evalue threshold. Must be greater than -evalue.|
Weak hits in ublast
Weak hits are especially useful in ublast together with termination options. With ublast, targets are compared to the query in an order that does not correlate well with sequence similarity or E-value. With these commands, the first accepted hit is not expected to be close to the best possible hit. Termination conditions are therefore disabled by default.
However, consider a situation where a typical query has one or more hits to the database. If on average a query has one hit, the speedup with -maxaccepts 1 would be approximately 2x since targets are examined in an effectively random order, so the hit will be found after comparing with half of the targets, on average. If the average query has N hits, the first hit will be found after searching 1/(N+1)th of the database. Using -maxaccepts 1 -maxrejects 0 would therefore give roughly an (N+1)x speedup.
It can therefore be useful to say something like "to maximize speed, stop the search if you find a hit with E-value < 1e-9, but I also want hits with E-value < 0.01 in case one is not found". This can be done with a command line like this:
usearch -ublast query.fasta -db db.udb -evalue 1e-9 -weak_evalue 0.01 \
-maxaccepts 1 -maxrejects 0 -blast6out results.m8