GH
view release on metacpan or search on metacpan
GH/Sim4/sim4.2002-03-03/sim4b1.c view on Meta::CPAN
};
#define HASH_SIZE 32767 /* 2**15 - 1 */
#define GEN_LOG4_ENTRIES 45
#define CDNA_LOG4_ENTRIES 25
static struct hash_node *phashtab[HASH_SIZE+1];
static struct hash_node **hashtab;
static int mask;
static int *next_pos, *pnext_pos;
/* The log4 arrays were computed to mimick the behaviour of the log formula
for computing the msp threshold in exon_cores(). For genomic_log4s,
entry i stores the value for the length of a genomic sequence
for which the contribution to the msp threshold is i/2, i.e.:
1.4*log_4(3/4*len1) = i/2;
Similarly, cDNA_log4s entries store lengths of the cDNA sequence for which
the contribution to the msp threshold is i/2, i.e.:
1.4*log_4(len2) = i/2;
Both arrays are sorted in increasing order, and can be searched with
binary search.
*/
GH/Sim4/sim4.2002-03-03/sim4b1.c view on Meta::CPAN
Exon *tmp_block;
if (in_K<=0) {
/* compute expected length of longest exact match .. */
/* K = (int) (log(.75*(double)len1)+log((double)len2))/log(4.0); */
/* .. and throw in a fudge factor */
/* K *= 1.4; */
K = get_msp_threshold(len1, len2);
if (K>=0) K--; /* compensate for the rounding in the log formula */
/* commented this to avoid fragmentation
if (flag) K = min(K, DEFAULT_C); second pass
*/
} else
K = in_K;
numMSPs = 0;
exon_list = NULL;
allocated = ckalloc((len1+len2+1)*sizeof(int));
( run in 1.201 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )