|
proteinortho
6.0.14
|
#include <iostream>#include <fstream>#include <sstream>#include <string>#include <list>#include <map>#include <algorithm>#include <cmath>#include <vector>#include <stack>#include <iomanip>#include <cstdlib>#include <ctime>#include <memory>#include <climits>Go to the source code of this file.
Classes | |
| class | ConnectedComponent |
| struct | wedge |
| struct | protein |
| struct | compare_ConnectedComponents |
| struct | protein_degree |
Macros | |
| #define | floatprecision_H 1 |
Typedefs | |
| using | floattype = float |
Functions | |
| void | ssyevr_ (char *jobz, char *range, char *uplo, int *n, float *a, int *lda, float *vl, float *vu, int *il, int *iu, float *abstol, int *m, float *w, float *z, int *ldz, int *isuppz, float *work, int *lwork, int *iwork, int *liwork, int *info) |
| void | dsyevr_ (char *jobz, char *range, char *uplo, int *n, double *a, int *lda, double *vl, double *vu, int *il, int *iu, double *abstol, int *m, double *w, double *z, int *ldz, int *isuppz, double *work, int *lwork, int *iwork, int *liwork, int *info) |
| template<class T > | |
| void | dssyevr_ (char *jobz, char *range, char *uplo, int *n, T *a, int *lda, T *vl, T *vu, int *il, int *iu, T *abstol, int *m, T *w, T *z, int *ldz, int *isuppz, T *work, int *lwork, int *iwork, int *liwork, int *info) |
| ConnectedComponent | BFS (vector< bool > *done, unsigned int cur_node) size_t getPeakRSS() |
| size_t | getCurrentRSS () |
| void | printHelp () |
| unsigned int | numberOfNodesToMemoryUsageLaplacian_inKB (unsigned int n) |
| unsigned int | BFS_not_critical (vector< unsigned int > *done_withBacktrack, unsigned int start_node, unsigned int end_node) |
| bool | criticalHeuristic (ConnectedComponent *cur_cc) |
| void | partition_graph () |
| void | clear_edges (vector< unsigned int > &nodes) |
| void | removeExternalEdges (map< unsigned int, bool > &a) |
| void | remove_edge_index (const unsigned int node_id, const unsigned int index) |
| void | parse_file (string file) |
| void | sort_species (void) |
| void | stats (floattype i, floattype size) |
| void | print_header () |
| void | print_group (vector< unsigned int > &nodes, floattype connectivity) |
| floattype | calc_group (vector< unsigned int > &nodes) |
| floattype | string2floattype (string str) |
| void | tokenize (const string &str, vector< string > &tokens, const string &delimiters="\t") |
| unsigned int | max_of_diag (vector< unsigned int > &nodes, vector< unsigned int > &diag) |
| vector< floattype > | generate_random_vector (const unsigned int size) |
| vector< floattype > | get_new_x (vector< floattype > x, vector< unsigned int > &nodes, map< unsigned int, unsigned int > &mapping, bool isWeighted) |
| vector< floattype > | makeOrthogonal (vector< floattype > x) |
| vector< floattype > | normalize (vector< floattype > x, floattype *length) |
| vector< floattype > | getY (floattype max_degree, vector< floattype > x_hat, vector< floattype > x_new, vector< unsigned int > &nodes, vector< unsigned int > &diag) |
| unsigned int | sumOutDegs (const vector< unsigned int > &nodes) |
| floattype | getConnectivity (vector< unsigned int > &nodes, bool useLapack) |
| bool | comparator_pairfloattypeUInt (const pair< floattype, unsigned int > &l, const pair< floattype, unsigned int > &r) |
| void | splitGroups (vector< floattype > &y, vector< unsigned int > &nodes, bool useLapack) |
| string | getTime (void) |
| bool | test__max_of_diag () |
| bool | test__generate_random_vector () |
| bool | test__get_new_x () |
| bool | test__makeOrthogonal () |
| bool | test__normalize () |
| bool | test__getY () |
| bool | test__splitGroups () |
Variables | |
| bool | param_verbose = false |
| By default no verbose is printed. More... | |
| floattype | param_con_threshold = 0.1 |
| as a reference: a chain a-b-c-d has 0.25 More... | |
| unsigned int | debug_level = 0 |
| Debug stderr level. More... | |
| floattype | param_sep_purity = 1e-7 |
| as a reference: a-b-c will give +/-0.707107 and 2.34857e-08 More... | |
| unsigned int | param_max_nodes = 16777216 |
| = 2^24. The absolute maximal number of nodes for a connected component. If exceeded then it is skipped entirely. More... | |
| floattype | param_min_species = 1 |
| Minimum number of species per connected component. More... | |
| string | param_rmgraph = "remove.graph" |
| Name of the remove graph, containing all edges that are removed by this clustering algorithm. More... | |
| bool | param_useWeights = true |
| If true, then weights are used for the calculation of the algebraic connectivity. More... | |
| unsigned int | param_minOpenmp = 256 |
| the minimum size of a for-loop for openmp to activate (openmp has some initialization costs) More... | |
| bool | param_useKmereHeuristic = true |
| If true then kmere-heuristic is used. For ambigous splits (e.g. all but one entrie of the fiedler vector are below 0) then the fiedler vector is clustered in k groups instead. This will lead to k new groups instead of 2. See the variables kmereHeuristic_* for more informations when the kmere-heuristic will be activated. More... | |
| unsigned int | param_maxRam_inKB = 16777216 |
| = 16 GB of memory as default. Decreasing this may lead to more power iterations and thus to a increase in runtime as a trade-off More... | |
| bool | param_useLapack = true |
| If true, then lapack is used accordingly to param_lapack_power_threshold_d. More... | |
| unsigned int | critical_min_nodes = 16777216 |
| Depricated. More... | |
| const unsigned int | min_iter = 16 |
| Minimal number of iterations for power iteration. More... | |
| unsigned int | param_max_iter = 8192 |
| Maximal number of iterations for power iteration. More... | |
| floattype | param_epsilon = 1e-8 |
| Epsilon for lapack functions dsyevr/ssyevr as well as the power iteration. Set analog to http://people.sc.fsu.edu/~jburkardt/c_src/power_method/power_method_prb.c. More... | |
| const unsigned int | kmereHeuristic_minNodes = 1048576 |
| = 2^20. The minimum number of nodes of the connected component for the kmere-heuristic. More... | |
| const unsigned int | kmereHeuristic_protPerSpecies = 1 |
| The mimum number of proteins per species for the kmere-heuristic. More... | |
| const unsigned int | kmereHeuristic_minNumberOfGroups = 3 |
| The minimum number of species for the kmere-heuristic. More... | |
| const unsigned int | maxUseWeightsNumNodes = 1048576 |
| = 2^20. The maximum number of nodes for a connected component such that weights are still used for calculations. If the connected component is too large, the unweighted version is used instead to save time. More... | |
| floattype | param_lapack_power_threshold_d = -1 |
| The minimum graph density for the power iteration method, lapacks (d|s)syevr is used otherwise. If -1 then the linear function is used instead : If d<10^(-5.2)*n, then lapack otherwise power. More... | |
| unsigned int | species_counter = 0 |
| Number of species (in the input graph) More... | |
| unsigned int | protein_counter = 0 |
| Number of proteins total (in the input graph) More... | |
| vector< string > | species |
| Species ID (number) -> Species name. More... | |
| vector< protein > | graph |
| Graph containing all protein data (see the class protein for more informations) More... | |
| floattype | last_stat = 0 |
| For buffering progress stats. More... | |
| unsigned int | edges = 0 |
| Total number of edges. More... | |
| vector< shared_ptr< ofstream > > | graph_clean |
| File handler to store graph data. More... | |
| vector< int > | reorder_table |
| Tells how proteins/species must be sorted. More... | |
| unsigned long | graph_ram_total_inKB =0 |
| The internal size of the input graph in KB (this will be set in parse_file() ) More... | |
| unsigned int | num_cpus =1 |
| By default only one core is used (change this with -cpus) More... | |
| #define floatprecision_H 1 |
| using floattype = float |