(letterProbs[
i] > second) {
73second = letterProbs[
i];
74 if(letterProbs[
i] >
max) {
76 max= letterProbs[
i];
88 const double* P_match,
intlength2)
95 returnresult1 || result2;
102 const double* P_query,
const double* P_match,
103 const char*matrix_name)
119 const double* P_query,
const double* P_match,
120 const char*matrix_name)
139 const double* P_query,
140 const double* P_match,
141 const char*matrix_name)
162 const double* P_query,
163 const double* P_match,
164 const char*matrix_name)
172 const double*p_matrix;
174 doubleD_m_mat, D_q_mat, D_m_q;
178 doublecorr_factor = 0.0;
183 doublelen_large, len_small;
191p_query[
i] = P_query[
i];
192p_match[
i] = P_match[
i];
194(p_query[
i] - p_matrix[
i]) * (p_match[
i] - p_matrix[
i]);
201acos((D_m_mat * D_m_mat + D_q_mat * D_q_mat -
202D_m_q * D_m_q) / 2.0 / D_m_mat / D_q_mat);
206len_q = 1.0 * Len_query;
207len_m = 1.0 * Len_match;
246 const double* probArray1,
247 const double* probArray2,
248 const char*matrixName,
251 inttestFunctionIndex = (
int) composition_adjust_mode;
254 Cond_func[testFunctionIndex] (length1, length2,
255probArray1, probArray2, matrixName);
EMatrixAdjustRule(* Condition)(int, int, const double *, const double *, const char *)
type of function used to choose a mode for composition-based statistics.
#define ANGLE_DEGREE_THRESHOLD
static EMatrixAdjustRule s_JustScaleOldMatrix(int Len_query, int Len_match, const double *P_query, const double *P_match, const char *matrix_name)
Return eCompoScaleOldMatrix unconditionally.
#define QUERY_MATCH_DISTANCE_THRESHOLD
#define PI
some digits of PI
static Condition Cond_func[]
An array of functions that can be used to decide which optimization formulation should be used for sc...
#define HALF_CIRCLE_DEGREES
180 degrees in half a circle
static int s_HighPairFrequencies(const double *letterProbs, int length)
Return true if length > 50 and the two most frequent letters occur a total of more that 40% of the ti...
static EMatrixAdjustRule s_TestToApplyREAdjustmentUnconditional(int Len_query, int Len_match, const double *P_query, const double *P_match, const char *matrix_name)
A function used to choose a mode for composition-based statistics.
EMatrixAdjustRule Blast_ChooseMatrixAdjustRule(int length1, int length2, const double *probArray1, const double *probArray2, const char *matrixName, ECompoAdjustModes composition_adjust_mode)
Choose how the relative entropy should be constrained based on properties of the two sequences to be ...
static EMatrixAdjustRule s_NeverAdjustMatrix(int Len_query, int Len_match, const double *P_query, const double *P_match, const char *matrix_name)
Return eDontAdjustMatrix unconditionally.
#define HIGH_PAIR_THRESHOLD
static EMatrixAdjustRule s_TestToApplyREAdjustmentConditional(int Len_query, int Len_match, const double *P_query, const double *P_match, const char *matrix_name)
A function used to choose a mode for composition-based statistics.
static int s_HighPairEitherSeq(const double *P_query, int length1, const double *P_match, int length2)
Return true if either the query or the matching sequences passes the test in s_HighPairFrequencies.
#define LENGTH_LOWER_THRESHOLD
#define LENGTH_RATIO_THRESHOLD
Declarations of functions used to choose the mode for composition-based statistics.
Definitions used in compositional score matrix adjustment.
double Blast_GetRelativeEntropy(const double A[], const double B[])
Compute the symmetric form of the relative entropy of two probability vectors.
ECompoAdjustModes
An collection of constants that specify all permissible modes of composition adjustment.
#define COMPO_NUM_TRUE_AA
Number of standard amino acids.
EMatrixAdjustRule
An collection of constants that specify all rules that may be used to generate a compositionally adju...
@ eUserSpecifiedRelEntropy
unsigned int
A callback function used to compare two keys in a database.
Definitions used to get joint probabilities for a scoring matrix.
const double * Blast_GetMatrixBackgroundFreq(const char *matrix_name)
Return true if frequency data is available for the given matrix name.
Type and macro definitions from C toolkit that are not defined in C++ toolkit.
#define FALSE
bool replacment for C indicating false.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4