This file contains function prototypes. More...
Go to the source code of this file.
Functions | |
float | ComputeAccuracy (int n, gk_fkv_t *list) |
float | ComputeMean (int n, float *values) |
float | ComputeMedianRFP (int n, gk_fkv_t *list) |
float | ComputeROCn (int n, int maxN, gk_fkv_t *list) |
float | ComputeStdDev (int n, float *values) |
void | decodeblock (unsigned char *in, unsigned char *out) |
void | encodeblock (unsigned char *in, unsigned char *out) |
void | errexit (char *,...) |
void | gk_AllocMatrix (void ***, size_t, size_t, size_t) |
void | gk_array2csr (size_t n, size_t range, int *array, int *ptr, int *ind) |
Converts an element-based set membership into a CSR-format set-based membership. More... | |
void | gk_ckvsortd (size_t, gk_ckv_t *) |
void | gk_ckvsorti (size_t, gk_ckv_t *) |
double | gk_CPUSeconds (void) |
void | gk_csortd (size_t, char *) |
void | gk_csorti (size_t, char *) |
void | gk_csr_CompactColumns (gk_csr_t *mat) |
float | gk_csr_ComputeSimilarity (gk_csr_t *mat, int i1, int i2, int what, int simtype) |
void | gk_csr_ComputeSquaredNorms (gk_csr_t *mat, int what) |
void | gk_csr_ComputeSums (gk_csr_t *mat, int what) |
gk_csr_t * | gk_csr_Create () |
void | gk_csr_CreateIndex (gk_csr_t *mat, int what) |
gk_csr_t * | gk_csr_Dup (gk_csr_t *mat) |
gk_csr_t * | gk_csr_ExtractPartition (gk_csr_t *mat, int *part, int pid) |
gk_csr_t * | gk_csr_ExtractRows (gk_csr_t *mat, int nrows, int *rind) |
gk_csr_t * | gk_csr_ExtractSubmatrix (gk_csr_t *mat, int rstart, int nrows) |
void | gk_csr_Free (gk_csr_t **mat) |
void | gk_csr_FreeContents (gk_csr_t *mat) |
int | gk_csr_GetSimilarRows (gk_csr_t *mat, int nqterms, int *qind, float *qval, int simtype, int nsim, float minsim, gk_fkv_t *hits, int *_imarker, gk_fkv_t *i_cand) |
void | gk_csr_Init (gk_csr_t *mat) |
gk_csr_t * | gk_csr_LowFilter (gk_csr_t *mat, int what, int norm, float fraction) |
void | gk_csr_Normalize (gk_csr_t *mat, int what, int norm) |
gk_csr_t * | gk_csr_Prune (gk_csr_t *mat, int what, int minf, int maxf) |
gk_csr_t * | gk_csr_Read (char *filename, int format, int readvals, int numbering) |
void | gk_csr_Scale (gk_csr_t *mat, int type) |
void | gk_csr_SortIndices (gk_csr_t *mat, int what) |
gk_csr_t ** | gk_csr_Split (gk_csr_t *mat, int *color) |
gk_csr_t * | gk_csr_TopKPlusFilter (gk_csr_t *mat, int what, int topk, float keepval) |
void | gk_csr_Write (gk_csr_t *mat, char *filename, int format, int writevals, int numbering) |
gk_csr_t * | gk_csr_ZScoreFilter (gk_csr_t *mat, int what, float zscore) |
int | gk_dexists (char *) |
int | gk_dfkvkselect (size_t, int, gk_fkv_t *) |
void | gk_dkvsortd (size_t, gk_dkv_t *) |
void | gk_dkvsorti (size_t, gk_dkv_t *) |
double * | gk_dreadfilebin (char *fname, ssize_t *r_nelmnts) |
void | gk_dsortd (size_t, double *) |
void | gk_dsorti (size_t, double *) |
void | gk_errexit (int signum, char *,...) |
void | gk_fclose (FILE *) |
int | gk_fexists (char *) |
void | gk_find_frequent_itemsets (int ntrans, ssize_t *tranptr, int *tranind, int minfreq, int maxfreq, int minlen, int maxlen, void(*process_itemset)(void *stateptr, int nitems, int *itemind, int ntrans, int *tranind), void *stateptr) |
void | gk_fkvsortd (size_t, gk_fkv_t *) |
void | gk_fkvsorti (size_t, gk_fkv_t *) |
float | gk_flog2 (float) |
FILE * | gk_fopen (char *, char *, const char *) |
float * | gk_freadfilebin (char *fname, ssize_t *r_nelmnts) |
void | gk_free (void **ptr1,...) |
void | gk_FreeMatrix (void ***, size_t, size_t) |
void | gk_freepdbf (pdbf *p) |
Frees the memory of a pdbf structure. More... | |
void | gk_freetokenslist (gk_Tokens_t *tokens) |
void | gk_fsortd (size_t, float *) |
void | gk_fsorti (size_t, float *) |
size_t | gk_fwritefilebin (char *fname, size_t n, float *a) |
char * | gk_getbasename (char *path) |
size_t | gk_GetCurMemoryUsed () |
char * | gk_getextname (char *path) |
char * | gk_getfilename (char *path) |
void | gk_getfilestats (char *fname, size_t *r_nlines, size_t *r_ntokens, size_t *r_max_nlntokens, size_t *r_nbytes) |
intmax_t | gk_getfsize (char *) |
Returns the size of the file in bytes. More... | |
gk_idx_t | gk_getline (char **lineptr, size_t *n, FILE *stream) |
size_t | gk_GetMaxMemoryUsed () |
char * | gk_getpathname (char *path) |
int | gk_GetStringID (gk_StringMap_t *strmap, char *key) |
void | gk_gkmcoreAdd (gk_mcore_t *mcore, int type, size_t nbytes, void *ptr) |
gk_mcore_t * | gk_gkmcoreCreate () |
void | gk_gkmcoreDel (gk_mcore_t *mcore, void *ptr) |
void | gk_gkmcoreDestroy (gk_mcore_t **r_mcore, int showstats) |
void | gk_gkmcorePop (gk_mcore_t *mcore) |
void | gk_gkmcorePush (gk_mcore_t *mcore) |
void | gk_graph_ComputeBestFOrdering (gk_graph_t *graph, int v, int type, int32_t **r_perm, int32_t **r_iperm) |
void | gk_graph_ComputeBestFOrdering0 (gk_graph_t *graph, int v, int type, int32_t **r_perm, int32_t **r_iperm) |
void | gk_graph_ComputeBFSOrdering (gk_graph_t *graph, int v, int32_t **r_perm, int32_t **r_iperm) |
gk_graph_t * | gk_graph_Create () |
gk_graph_t * | gk_graph_Dup (gk_graph_t *graph) |
gk_graph_t * | gk_graph_ExtractSubgraph (gk_graph_t *graph, int vstart, int nvtxs) |
int | gk_graph_FindComponents (gk_graph_t *graph, int32_t *cptr, int32_t *cind) |
void | gk_graph_Free (gk_graph_t **graph) |
void | gk_graph_FreeContents (gk_graph_t *graph) |
void | gk_graph_Init (gk_graph_t *graph) |
gk_graph_t * | gk_graph_Read (char *filename, int format, int isfewgts, int isfvwgts, int isfvsizes) |
gk_graph_t * | gk_graph_Reorder (gk_graph_t *graph, int32_t *perm, int32_t *iperm) |
void | gk_graph_SingleSourceShortestPaths (gk_graph_t *graph, int v, void **r_sps) |
void | gk_graph_Write (gk_graph_t *graph, char *filename, int format) |
gk_i2cc2i_t * | gk_i2cc2i_create_common (char *alphabet) |
This function creates the localizations for the various sequences. More... | |
void | gk_i32kvsortd (size_t, gk_i32kv_t *) |
void | gk_i32kvsorti (size_t, gk_i32kv_t *) |
int32_t * | gk_i32readfile (char *fname, gk_idx_t *r_nlines) |
int32_t * | gk_i32readfilebin (char *fname, ssize_t *r_nelmnts) |
void | gk_i64kvsortd (size_t, gk_i64kv_t *) |
void | gk_i64kvsorti (size_t, gk_i64kv_t *) |
int64_t * | gk_i64readfile (char *fname, gk_idx_t *r_nlines) |
int64_t * | gk_i64readfilebin (char *fname, ssize_t *r_nelmnts) |
void | gk_idxkvsortd (size_t, gk_idxkv_t *) |
void | gk_idxkvsorti (size_t, gk_idxkv_t *) |
void | gk_idxsortd (size_t, gk_idx_t *) |
void | gk_idxsorti (size_t, gk_idx_t *) |
int | gk_ifkvkselect (size_t, int, gk_fkv_t *) |
void | gk_ikvsortd (size_t, gk_ikv_t *) |
void | gk_ikvsorti (size_t, gk_ikv_t *) |
void | gk_isortd (size_t, int *) |
void | gk_isorti (size_t, int *) |
int | gk_ispow2 (int) |
int | gk_log2 (int) |
void * | gk_malloc (size_t nbytes, char *msg) |
void | gk_malloc_cleanup (int showstats) |
int | gk_malloc_init () |
void | gk_mcoreAdd (gk_mcore_t *mcore, int type, size_t nbytes, void *ptr) |
gk_mcore_t * | gk_mcoreCreate (size_t coresize) |
void | gk_mcoreDel (gk_mcore_t *mcore, void *ptr) |
void | gk_mcoreDestroy (gk_mcore_t **r_mcore, int showstats) |
void * | gk_mcoreMalloc (gk_mcore_t *mcore, size_t nbytes) |
void | gk_mcorePop (gk_mcore_t *mcore) |
void | gk_mcorePush (gk_mcore_t *mcore) |
int | gk_mkpath (char *) |
void | gk_NonLocalExit_Handler (int signum) |
void | gk_randinit (uint64_t) |
uint32_t | gk_randint32 (void) |
uint64_t | gk_randint64 (void) |
void | gk_RandomPermute (size_t, int *, int) |
char ** | gk_readfile (char *fname, gk_idx_t *r_nlines) |
pdbf * | gk_readpdbfile (char *fname) |
Reads a pdb file into a pdbf structure. More... | |
void * | gk_realloc (void *oldptr, size_t nbytes, char *msg) |
int | gk_rmpath (char *) |
int | gk_rw_PageRank (gk_csr_t *mat, float lamda, float eps, int max_niter, float *pr) |
void | gk_seq_init (gk_seq_t *seq) |
gk_seq_t * | gk_seq_ReadGKMODPSSM (char *file_name) |
This function reads a pssm in the format of gkmod pssm. More... | |
void | gk_set_exit_on_error (int value) |
void | gk_SetSignalHandlers () |
void | gk_showcorruption (pdbf *p) |
Decodes the corruption bitswitch and prints any problems. More... | |
void | gk_sigthrow (int signum) |
int | gk_sigtrap () |
int | gk_siguntrap () |
void | gk_skvsortd (size_t, gk_skv_t *) |
void | gk_skvsorti (size_t, gk_skv_t *) |
time_t | gk_str2time (char *str) |
Converts a date/time string into its equivalent time_t value. More... | |
int | gk_strcasecmp (char *s1, char *s2) |
Case insensitive string comparison. More... | |
char * | gk_strchr_replace (char *str, char *fromlist, char *tolist) |
Replaces certain characters in a string. More... | |
char * | gk_strdup (char *orgstr) |
Duplicates a string. More... | |
char * | gk_strerror (int errnum) |
Thread-safe implementation of strerror() More... | |
char * | gk_strhprune (char *, char *) |
Prunes characters from the beginning of the string. More... | |
int | gk_strrcmp (char *s1, char *s2) |
Compare two strings in revere order. More... | |
int | gk_strstr_replace (char *str, char *pattern, char *replacement, char *options, char **new_str) |
Regex-based search-and-replace function. More... | |
void | gk_strtokenize (char *line, char *delim, gk_Tokens_t *tokens) |
char * | gk_strtolower (char *) |
Converts a string to lower case. More... | |
char * | gk_strtoupper (char *) |
Converts a string to upper case. More... | |
char * | gk_strtprune (char *, char *) |
Prunes characters from the end of the string. More... | |
char | gk_threetoone (char *res) |
Converts three-letter amino acid codes to one-leter codes. More... | |
char * | gk_time2str (time_t time) |
Converts a time_t time into a string. More... | |
void | gk_UnsetSignalHandlers () |
gk_wclock_t | gk_WClockSeconds (void) |
void | gk_writealphacarbons (pdbf *p, char *fname) |
Writes out all the alpha carbon atoms of a structure. More... | |
void | gk_writebackbone (pdbf *p, char *fname) |
Writes out all the backbone atoms of a structure in pdb format. More... | |
void | gk_writefullatom (pdbf *p, char *fname) |
Writes all atoms in p in pdb-format to file fname. More... | |
void | gk_zkvsortd (size_t, gk_zkv_t *) |
void | gk_zkvsorti (size_t, gk_zkv_t *) |
void | GKDecodeBase64 (int nbytes, unsigned char *inbuffer, unsigned char *outbuffer) |
void | GKEncodeBase64 (int nbytes, unsigned char *inbuffer, unsigned char *outbuffer) |
gk_HTable_t * | HTable_Create (int nelements) |
void | HTable_Delete (gk_HTable_t *htable, int key) |
void | HTable_Destroy (gk_HTable_t *htable) |
int | HTable_GetNext (gk_HTable_t *htable, int key, int *val, int type) |
int | HTable_HFunction (int nelements, int key) |
void | HTable_Insert (gk_HTable_t *htable, int key, int val) |
void | HTable_Reset (gk_HTable_t *htable) |
void | HTable_Resize (gk_HTable_t *htable, int nelements) |
int | HTable_Search (gk_HTable_t *htable, int key) |
int | HTable_SearchAndDelete (gk_HTable_t *htable, int key) |
int | omp_get_dynamic (void) |
int | omp_get_max_threads (void) |
int | omp_get_nested (void) |
int | omp_get_num_procs (void) |
int | omp_get_num_threads (void) |
int | omp_get_thread_num (void) |
int | omp_in_parallel (void) |
void | omp_set_dynamic (int num_threads) |
void | omp_set_nested (int nested) |
void | omp_set_num_threads (int num_threads) |
void | PrintBackTrace () |
This file contains function prototypes.
$Id: gk_proto.h 12591 2012-09-01 19:03:15Z karypis $
Definition in file gk_proto.h.
float ComputeAccuracy | ( | int | n, |
gk_fkv_t * | list | ||
) |
Definition at line 16 of file evaluate.c.
float ComputeMean | ( | int | n, |
float * | values | ||
) |
Definition at line 107 of file evaluate.c.
float ComputeMedianRFP | ( | int | n, |
gk_fkv_t * | list | ||
) |
Definition at line 81 of file evaluate.c.
Definition at line 47 of file evaluate.c.
float ComputeStdDev | ( | int | n, |
float * | values | ||
) |
Definition at line 121 of file evaluate.c.
void errexit | ( | char * | f_str, |
... | |||
) |
Converts an element-based set membership into a CSR-format set-based membership.
For example, it takes an array such as part[] that stores where each element belongs to and returns a pair of arrays (pptr[], pind[]) that store in CSF format the list of elements belonging in each partition.
n | the number of elements in the array (e.g., # of vertices) |
range | the cardinality of the set (e.g., # of partitions) |
array | the array that stores the per-element set membership |
ptr | the array that will store the starting indices in ind for the elements of each set. This is filled by the routine and its size should be at least range+1. |
ind | the array that stores consecutively which elements belong to each set. The size of this array should be n. |
Definition at line 62 of file GKlib/util.c.
void gk_ckvsortd | ( | size_t | n, |
gk_ckv_t * | base | ||
) |
void gk_ckvsorti | ( | size_t | n, |
gk_ckv_t * | base | ||
) |
void gk_csortd | ( | size_t | n, |
char * | base | ||
) |
void gk_csorti | ( | size_t | n, |
char * | base | ||
) |
void gk_csr_CompactColumns | ( | gk_csr_t * | mat | ) |
Compacts the column-space of the matrix by removing empty columns. As a result of the compaction, the column numbers are renumbered. The compaction operation is done in place and only affects the row-based representation of the matrix. The new columns are ordered in decreasing frequency.
mat | the matrix whose empty columns will be removed. |
Computes the similarity between two rows/columns
mat | the matrix itself. The routine assumes that the indices are sorted in increasing order. |
i1 | is the first row/column, |
i2 | is the second row/column, |
what | is either GK_CSR_ROW or GK_CSR_COL indicating the type of objects between the similarity will be computed, |
simtype | is the type of similarity and is one of GK_CSR_COS, GK_CSR_JAC, GK_CSR_MIN, GK_CSR_AMIN |
gk_csr_t* gk_csr_Create | ( | ) |
void gk_csr_Free | ( | gk_csr_t ** | mat | ) |
void gk_csr_FreeContents | ( | gk_csr_t * | mat | ) |
int gk_csr_GetSimilarRows | ( | gk_csr_t * | mat, |
int | nqterms, | ||
int * | qind, | ||
float * | qval, | ||
int | simtype, | ||
int | nsim, | ||
float | minsim, | ||
gk_fkv_t * | hits, | ||
int * | i_marker, | ||
gk_fkv_t * | i_cand | ||
) |
Finds the n most similar rows (neighbors) to the query using cosine similarity.
mat | the matrix itself |
nqterms | is the number of columns in the query |
qind | is the list of query columns |
qval | is the list of correspodning query weights |
simtype | is the type of similarity and is one of GK_CSR_COS, GK_CSR_JAC, GK_CSR_MIN, GK_CSR_AMIN |
nsim | is the maximum number of requested most similar rows. If -1 is provided, then everything is returned unsorted. |
minsim | is the minimum similarity of the requested most similar rows |
hits | is the result set. This array should be at least of length nsim. |
i_marker | is an array of size equal to the number of rows whose values are initialized to -1. If NULL is provided then this array is allocated and freed internally. |
i_cand | is an array of size equal to the number of rows. If NULL is provided then this array is allocated and freed internally. |
void gk_csr_Init | ( | gk_csr_t * | mat | ) |
Eliminates certain entries from the rows/columns of the matrix. The filtering takes place by keeping only the highest weight entries whose sum accounts for a certain fraction of the overall weight of the row/column.
mat | the matrix to be prunned, |
what | indicates if the rows (GK_CSR_ROW) or the columns (GK_CSR_COL) of the matrix will be prunned, |
norm | indicates the norm that will be used to aggregate the weights and possible values are 1 or 2, |
fraction | is the fraction of the overall norm that will be retained by the kept entries. |
Normalizes the rows/columns of the matrix to be unit length.
mat | the matrix itself, |
what | indicates what will be normalized and is obtained by specifying GK_CSR_ROW, GK_CSR_COL, GK_CSR_ROW|GK_CSR_COL. |
norm | indicates what norm is to normalize to, 1: 1-norm, 2: 2-norm |
Prunes certain rows/columns of the matrix. The prunning takes place by analyzing the row structure of the matrix. The prunning takes place by removing rows/columns but it does not affect the numbering of the remaining rows/columns.
mat | the matrix to be prunned, |
what | indicates if the rows (GK_CSR_ROW) or the columns (GK_CSR_COL) of the matrix will be prunned, |
minf | is the minimum number of rows (columns) that a column (row) must be present in order to be kept, |
maxf | is the maximum number of rows (columns) that a column (row) must be present at in order to be kept. |
Reads a CSR matrix from the supplied file and stores it the matrix's forward structure.
filename | is the file that stores the data. |
format | is either GK_CSR_FMT_METIS, GK_CSR_FMT_CLUTO, GK_CSR_FMT_CSR, GK_CSR_FMT_BINROW, GK_CSR_FMT_BINCOL specifying the type of the input format. The GK_CSR_FMT_CSR does not contain a header line, whereas the GK_CSR_FMT_BINROW is a binary format written by gk_csr_Write() using the same format specifier. |
readvals | is either 1 or 0, indicating if the CSR file contains values or it does not. It only applies when GK_CSR_FMT_CSR is used. |
numbering | is either 1 or 0, indicating if the numbering of the indices start from 1 or 0, respectively. If they start from 1, they are automatically decreamented during input so that they will start from 0. It only applies when GK_CSR_FMT_CSR is used. |
Splits the matrix into multiple sub-matrices based on the provided color array.
mat | is the original matrix. |
color | is an array of size equal to the number of non-zeros in the matrix (row-wise structure). The matrix is split into as many parts as the number of colors. For meaningfull results, the colors should be numbered consecutively starting from 0. |
Eliminates certain entries from the rows/columns of the matrix. The filtering takes place by keeping only the highest weight top-K entries along each row/column and those entries whose weight is greater than a specified value.
mat | the matrix to be prunned, |
what | indicates if the rows (GK_CSR_ROW) or the columns (GK_CSR_COL) of the matrix will be prunned, |
topk | is the number of the highest weight entries to keep. |
keepval | is the weight of a term above which will be kept. This is used to select additional terms past the first topk. |
Writes the row-based structure of a matrix into a file.
mat | is the matrix to be written, |
filename | is the name of the output file. |
format | is one of: GK_CSR_FMT_CLUTO, GK_CSR_FMT_CSR, GK_CSR_FMT_BINROW, GK_CSR_FMT_BINCOL. |
writevals | is either 1 or 0 indicating if the values will be written or not. This is only applicable when GK_CSR_FMT_CSR is used. |
numbering | is either 1 or 0 indicating if the internal 0-based numbering will be shifted by one or not during output. This is only applicable when GK_CSR_FMT_CSR is used. |
Eliminates certain entries from the rows/columns of the matrix. The filtering takes place by keeping only the terms whose contribution to the total length of the document is greater than a user-splied multiple over the average.
This routine assumes that the vectors are normalized to be unit length.
mat | the matrix to be prunned, |
what | indicates if the rows (GK_CSR_ROW) or the columns (GK_CSR_COL) of the matrix will be prunned, |
zscore | is the multiplicative factor over the average contribution to the length of the document. |
This function puts the 'topk' largest values in the beginning of the array
Definition at line 20 of file fkvkselect.c.
void gk_dkvsortd | ( | size_t | n, |
gk_dkv_t * | base | ||
) |
void gk_dkvsorti | ( | size_t | n, |
gk_dkv_t * | base | ||
) |
double* gk_dreadfilebin | ( | char * | fname, |
ssize_t * | r_nelmnts | ||
) |
This function reads the contents of a binary file and returns it in the form of an array of double.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 354 of file GKlib/io.c.
void gk_dsortd | ( | size_t | n, |
double * | base | ||
) |
void gk_dsorti | ( | size_t | n, |
double * | base | ||
) |
void gk_errexit | ( | int | signum, |
char * | f_str, | ||
... | |||
) |
void gk_fclose | ( | FILE * | ) |
Definition at line 44 of file GKlib/io.c.
void gk_find_frequent_itemsets | ( | int | ntrans, |
ssize_t * | tranptr, | ||
int * | tranind, | ||
int | minfreq, | ||
int | maxfreq, | ||
int | minlen, | ||
int | maxlen, | ||
void(*)(void *stateptr, int nitems, int *itemind, int ntrans, int *tranind) | process_itemset, | ||
void * | stateptr | ||
) |
void gk_fkvsortd | ( | size_t | n, |
gk_fkv_t * | base | ||
) |
void gk_fkvsorti | ( | size_t | n, |
gk_fkv_t * | base | ||
) |
float gk_flog2 | ( | float | ) |
Definition at line 104 of file GKlib/util.c.
FILE* gk_fopen | ( | char * | , |
char * | , | ||
const char * | |||
) |
Definition at line 24 of file GKlib/io.c.
float* gk_freadfilebin | ( | char * | fname, |
ssize_t * | r_nelmnts | ||
) |
This function reads the contents of a binary file and returns it in the form of an array of float.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 292 of file GKlib/io.c.
void gk_freepdbf | ( | pdbf * | p | ) |
void gk_freetokenslist | ( | gk_Tokens_t * | tokens | ) |
Definition at line 73 of file tokenizer.c.
void gk_fsortd | ( | size_t | n, |
float * | base | ||
) |
void gk_fsorti | ( | size_t | n, |
float * | base | ||
) |
This function writes the contents of an array into a binary file.
fname | is the name of the file |
n | the number of elements in the array. |
a | the array to be written out. |
Definition at line 331 of file GKlib/io.c.
void gk_getfilestats | ( | char * | fname, |
size_t * | r_nlines, | ||
size_t * | r_ntokens, | ||
size_t * | r_max_nlntokens, | ||
size_t * | r_nbytes | ||
) |
This function gets some basic statistics about the file.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
r_ntokens | is the number of tokens in the file. If it is NULL, this information is not returned. |
r_max_nlntokens | is the maximum number of tokens in any line in the file. If it is NULL this information is not returned. |
r_nbytes | is the number of bytes in the file. If it is NULL, this information is not returned. |
intmax_t gk_getfsize | ( | char * | filename | ) |
Returns the size of the file in bytes.
This function returns the size of a file as a 64 bit integer. If there were any errors in stat'ing the file, -1 is returned.
This function is the GKlib implementation of glibc's getline() function.
Definition at line 57 of file GKlib/io.c.
char* gk_getpathname | ( | char * | path | ) |
int gk_GetStringID | ( | gk_StringMap_t * | strmap, |
char * | key | ||
) |
void gk_gkmcoreAdd | ( | gk_mcore_t * | mcore, |
int | type, | ||
size_t | nbytes, | ||
void * | ptr | ||
) |
gk_mcore_t* gk_gkmcoreCreate | ( | ) |
void gk_gkmcoreDel | ( | gk_mcore_t * | mcore, |
void * | ptr | ||
) |
void gk_gkmcoreDestroy | ( | gk_mcore_t ** | r_mcore, |
int | showstats | ||
) |
void gk_gkmcorePop | ( | gk_mcore_t * | mcore | ) |
void gk_gkmcorePush | ( | gk_mcore_t * | mcore | ) |
void gk_graph_ComputeBestFOrdering | ( | gk_graph_t * | graph, |
int | v, | ||
int | type, | ||
int32_t ** | r_perm, | ||
int32_t ** | r_iperm | ||
) |
This function computes a permutation of the vertices based on a best-first-traversal. It can be used for re-ordering the graph to reduce its bandwidth for better cache locality.
[IN] | graph is the graph structure. |
[IN] | v is the starting vertex of the best-first traversal. |
[IN] | type indicates the criteria to use to measure the 'bestness' of a vertex. |
[OUT] | perm[i] stores the ID of vertex i in the re-ordered graph. |
[OUT] | iperm[i] stores the ID of the vertex that corresponds to the ith vertex in the re-ordered graph. |
Definition at line 887 of file GKlib/graph.c.
void gk_graph_ComputeBestFOrdering0 | ( | gk_graph_t * | graph, |
int | v, | ||
int | type, | ||
int32_t ** | r_perm, | ||
int32_t ** | r_iperm | ||
) |
This function computes a permutation of the vertices based on a best-first-traversal. It can be used for re-ordering the graph to reduce its bandwidth for better cache locality.
[IN] | graph is the graph structure. |
[IN] | v is the starting vertex of the best-first traversal. |
[IN] | type indicates the criteria to use to measure the 'bestness' of a vertex. |
[OUT] | perm[i] stores the ID of vertex i in the re-ordered graph. |
[OUT] | iperm[i] stores the ID of the vertex that corresponds to the ith vertex in the re-ordered graph. |
Definition at line 762 of file GKlib/graph.c.
void gk_graph_ComputeBFSOrdering | ( | gk_graph_t * | graph, |
int | v, | ||
int32_t ** | r_perm, | ||
int32_t ** | r_iperm | ||
) |
This function computes a permutation of the vertices based on a breadth-first-traversal. It can be used for re-ordering the graph to reduce its bandwidth for better cache locality. The algorithm used is a simplified version of the method used to find the connected components.
[IN] | graph is the graph structure |
[IN] | v is the starting vertex of the BFS |
[OUT] | perm[i] stores the ID of vertex i in the re-ordered graph. |
[OUT] | iperm[i] stores the ID of the vertex that corresponds to the ith vertex in the re-ordered graph. |
Definition at line 665 of file GKlib/graph.c.
gk_graph_t* gk_graph_Create | ( | ) |
Allocate memory for a graph and initializes it
Definition at line 19 of file GKlib/graph.c.
gk_graph_t* gk_graph_Dup | ( | gk_graph_t * | graph | ) |
Returns a copy of a graph.
graph | is the graph to be duplicated. |
Definition at line 340 of file GKlib/graph.c.
gk_graph_t* gk_graph_ExtractSubgraph | ( | gk_graph_t * | graph, |
int | vstart, | ||
int | nvtxs | ||
) |
Returns a subgraph containing a set of consecutive vertices.
graph | is the original graph. |
vstart | is the starting vertex. |
nvtxs | is the number of vertices from vstart to extract. |
Definition at line 391 of file GKlib/graph.c.
int gk_graph_FindComponents | ( | gk_graph_t * | graph, |
int32_t * | cptr, | ||
int32_t * | cind | ||
) |
This function finds the connected components in a graph.
graph | is the graph structure |
cptr | is the ptr structure of the CSR representation of the components. The length of this vector must be graph->nvtxs+1. |
cind | is the indices structure of the CSR representation of the components. The length of this vector must be graph->nvtxs. |
Definition at line 572 of file GKlib/graph.c.
void gk_graph_Free | ( | gk_graph_t ** | graph | ) |
Frees all the memory allocated for a graph.
graph | is the graph to be freed. |
Definition at line 48 of file GKlib/graph.c.
void gk_graph_FreeContents | ( | gk_graph_t * | graph | ) |
Frees only the memory allocated for the graph's different fields and sets them to NULL.
graph | is the graph whose contents will be freed. |
Definition at line 63 of file GKlib/graph.c.
void gk_graph_Init | ( | gk_graph_t * | graph | ) |
Initializes the graph.
graph | is the graph to be initialized. |
Definition at line 36 of file GKlib/graph.c.
gk_graph_t* gk_graph_Read | ( | char * | filename, |
int | format, | ||
int | isfewgts, | ||
int | isfvwgts, | ||
int | isfvsizes | ||
) |
Reads a sparse graph from the supplied file
filename | is the file that stores the data. |
format | is the graph format. The supported values are: GK_GRAPH_FMT_METIS. |
isfewgts | is 1 if the edge-weights should be read as floats |
isfvwgts | is 1 if the vertex-weights should be read as floats |
isfvsizes | is 1 if the vertex-sizes should be read as floats |
Definition at line 85 of file GKlib/graph.c.
gk_graph_t* gk_graph_Reorder | ( | gk_graph_t * | graph, |
int32_t * | perm, | ||
int32_t * | iperm | ||
) |
Returns a graph that has been reordered according to the permutation.
[IN] | graph is the graph to be re-ordered. |
[IN] | perm is the new ordering of the graph's vertices |
[IN] | iperm is the original ordering of the re-ordered graph's vertices |
Definition at line 460 of file GKlib/graph.c.
void gk_graph_SingleSourceShortestPaths | ( | gk_graph_t * | graph, |
int | v, | ||
void ** | r_sps | ||
) |
This function computes the single-source shortest path lengths from the root node to all the other nodes in the graph. If the graph is not connected then, the sortest part to the vertices in the other components is -1.
[IN] | graph is the graph structure. |
[IN] | v is the root of the single-source shortest path computations. |
[IN] | type indicates the criteria to use to measure the 'bestness' of a vertex. |
[OUT] | sps[i] stores the length of the shortest path from v to vertex i. If no such path exists, then it is -1. Note that the returned array will be either an array of int32_t or an array of floats. The specific type is determined by the existance of non NULL iadjwgt and fadjwgt arrays. If both of these arrays exist, then priority is given to iadjwgt. |
Definition at line 1084 of file GKlib/graph.c.
void gk_graph_Write | ( | gk_graph_t * | graph, |
char * | filename, | ||
int | format | ||
) |
Writes a graph into a file.
graph | is the graph to be written, |
filename | is the name of the output file. |
format | is one of GK_GRAPH_FMT_METIS specifying the format of the output file. |
Definition at line 277 of file GKlib/graph.c.
gk_i2cc2i_t* gk_i2cc2i_create_common | ( | char * | alphabet | ) |
This function creates the localizations for the various sequences.
string | i.e amino acids, nucleotides, sequences |
void gk_i32kvsortd | ( | size_t | n, |
gk_i32kv_t * | base | ||
) |
void gk_i32kvsorti | ( | size_t | n, |
gk_i32kv_t * | base | ||
) |
This function reads the contents of a file and returns it in the form of an array of int32_t.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 139 of file GKlib/io.c.
This function reads the contents of a binary file and returns it in the form of an array of int32_t.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 214 of file GKlib/io.c.
void gk_i64kvsortd | ( | size_t | n, |
gk_i64kv_t * | base | ||
) |
void gk_i64kvsorti | ( | size_t | n, |
gk_i64kv_t * | base | ||
) |
This function reads the contents of a file and returns it in the form of an array of int64_t.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 177 of file GKlib/io.c.
This function reads the contents of a binary file and returns it in the form of an array of int64_t.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 253 of file GKlib/io.c.
void gk_idxkvsortd | ( | size_t | n, |
gk_idxkv_t * | base | ||
) |
void gk_idxkvsorti | ( | size_t | n, |
gk_idxkv_t * | base | ||
) |
This function puts the 'topk' smallest values in the beginning of the array
Definition at line 84 of file fkvkselect.c.
void gk_ikvsortd | ( | size_t | n, |
gk_ikv_t * | base | ||
) |
void gk_ikvsorti | ( | size_t | n, |
gk_ikv_t * | base | ||
) |
Definition at line 95 of file GKlib/util.c.
Definition at line 83 of file GKlib/util.c.
void* gk_malloc | ( | size_t | nbytes, |
char * | msg | ||
) |
This function is my wrapper around malloc that provides the following enhancements over malloc: It always allocates one byte of memory, even if 0 bytes are requested. This is to ensure that checks of returned values do not lead to NULL due to 0 bytes requested. It zeros-out the memory that is allocated. This is for a quick init of the underlying datastructures.
void gk_malloc_cleanup | ( | int | showstats | ) |
This function frees the memory that has been allocated since the last call to gk_malloc_init().
int gk_malloc_init | ( | ) |
void gk_mcoreAdd | ( | gk_mcore_t * | mcore, |
int | type, | ||
size_t | nbytes, | ||
void * | ptr | ||
) |
gk_mcore_t* gk_mcoreCreate | ( | size_t | coresize | ) |
void gk_mcoreDel | ( | gk_mcore_t * | mcore, |
void * | ptr | ||
) |
void gk_mcoreDestroy | ( | gk_mcore_t ** | r_mcore, |
int | showstats | ||
) |
void* gk_mcoreMalloc | ( | gk_mcore_t * | mcore, |
size_t | nbytes | ||
) |
void gk_mcorePop | ( | gk_mcore_t * | mcore | ) |
void gk_mcorePush | ( | gk_mcore_t * | mcore | ) |
void gk_randinit | ( | uint64_t | seed | ) |
Definition at line 20 of file GKlib/util.c.
char** gk_readfile | ( | char * | fname, |
gk_idx_t * | r_nlines | ||
) |
This function reads the contents of a text file and returns it in the form of an array of strings.
fname | is the name of the file |
r_nlines | is the number of lines in the file. If it is NULL, this information is not returned. |
Definition at line 103 of file GKlib/io.c.
pdbf* gk_readpdbfile | ( | char * | fname | ) |
void* gk_realloc | ( | void * | oldptr, |
size_t | nbytes, | ||
char * | msg | ||
) |
Computes the (personalized) page-rank of the vertices in a graph.
mat | is the matrix storing the graph. |
lamda | is the restart probability. |
eps | is the error tolerance for convergance. |
max_niter | is the maximum number of allowed iterations. |
pr | on entry stores the restart distribution of the vertices. This allows for the computation of personalized page-rank scores by appropriately setting that parameter. On return, pr stores the computed page ranks. |
gk_seq_t* gk_seq_ReadGKMODPSSM | ( | char * | filename | ) |
void gk_set_exit_on_error | ( | int | value | ) |
void gk_showcorruption | ( | pdbf * | p | ) |
Decodes the corruption bitswitch and prints any problems.
Due to the totally unreliable nature of the pdb format, reading a pdb file stores a corruption bitswitch, and this function decodes that switch and prints the result on stdout.
p | is the pdb structure to write out. |
fname | is the file name to be written. |
void gk_sigthrow | ( | int | signum | ) |
int gk_sigtrap | ( | ) |
int gk_siguntrap | ( | ) |
void gk_skvsortd | ( | size_t | n, |
gk_skv_t * | base | ||
) |
void gk_skvsorti | ( | size_t | n, |
gk_skv_t * | base | ||
) |
time_t gk_str2time | ( | char * | str | ) |
Converts a date/time string into its equivalent time_t value.
This function takes date and/or time specification and converts it in the equivalent time_t representation. The conversion is done using the strptime() function. The format that gk_str2time() understands is mm/dd/yyyy hh:mm:ss, in which the hours are in military time.
str | is the date/time string to be converted. |
int gk_strcasecmp | ( | char * | s1, |
char * | s2 | ||
) |
Case insensitive string comparison.
This function compares two strings for equality by ignoring the case of the strings.
s1 | is the first string to be compared. |
s2 | is the second string to be compared. |
1 | if the strings are identical, |
0 | otherwise. |
char* gk_strchr_replace | ( | char * | str, |
char * | fromlist, | ||
char * | tolist | ||
) |
Replaces certain characters in a string.
This function takes a string and replaces all the characters in the fromlist
with the corresponding characters from the tolist
. That is, each occurence of fromlist[i]
is replaced by tolist[i]
. If the tolist
is shorter than fromlist
, then the corresponding characters are deleted. The modifications on str
are done in place. It tries to provide a functionality similar to Perl's tr// function.
str | is the string whose characters will be replaced. |
fromlist | is the set of characters to be replaced. |
tolist | is the set of replacement characters . |
str
itself. char* gk_strdup | ( | char * | orgstr | ) |
Duplicates a string.
This function is a replacement for C's standard strdup() function. The key differences between the two are that gk_strdup():
The string that is returned must be freed by gk_free().
orgstr | is the string that will be duplicated. |
char* gk_strerror | ( | int | errnum | ) |
char* gk_strhprune | ( | char * | str, |
char * | rmlist | ||
) |
Prunes characters from the beginning of the string.
This function removes any starting characters that are included in the rmlist
. The trimming stops at the first character that is not in rmlist
. This function can be used to removed leading spaces, tabs, etc. This is a distructive operation as it modifies the string.
str | is the string that will be trimmed. |
rmlist | contains the set of characters that will be removed. |
str
itself. int gk_strrcmp | ( | char * | s1, |
char * | s2 | ||
) |
Compare two strings in revere order.
This function is similar to strcmp but it performs the comparison as if the two strings were reversed.
s1 | is the first string to be compared. |
s2 | is the second string to be compared. |
-1,0,1,if | the s1 < s2, s1 == s2, or s1 > s2. |
int gk_strstr_replace | ( | char * | str, |
char * | pattern, | ||
char * | replacement, | ||
char * | options, | ||
char ** | new_str | ||
) |
Regex-based search-and-replace function.
This function is a C implementation of Perl's s//
regular-expression based substitution function.
str | is the input string on which the operation will be performed. |
pattern | is the regular expression for the pattern to be matched for substitution. |
replacement | is the replacement string, in which the possible captured pattern substrings are referred to as $1, $2, ..., $9. The entire matched pattern is refered to as $0. |
options | is a string specified options for the substitution operation. Currently the "i" (case insensitive) and "g" (global substitution) are supported. |
new_str | is a reference to a pointer that will store a pointer to the newly created string that results from the substitutions. This string is allocated via gk_malloc() and needs to be freed using gk_free(). The string is returned even if no substitutions were performed. |
newstr
, which also needs to be freed afterwards. void gk_strtokenize | ( | char * | line, |
char * | delim, | ||
gk_Tokens_t * | tokens | ||
) |
Definition at line 22 of file tokenizer.c.
char* gk_strtolower | ( | char * | str | ) |
Converts a string to lower case.
This function converts a string to lower case. This operation modifies the string itself.
str | is the string whose case will be changed. |
str
itself. char* gk_strtoupper | ( | char * | str | ) |
Converts a string to upper case.
This function converts a string to upper case. This operation modifies the string itself.
str | is the string whose case will be changed. |
str
itself. char* gk_strtprune | ( | char * | str, |
char * | rmlist | ||
) |
Prunes characters from the end of the string.
This function removes any trailing characters that are included in the rmlist
. The trimming stops at the last character (i.e., first character from the end) that is not in rmlist
.
This function can be used to removed trailing spaces, newlines, etc. This is a distructive operation as it modifies the string.
str | is the string that will be trimmed. |
rmlist | contains the set of characters that will be removed. |
str
itself. char gk_threetoone | ( | char * | res | ) |
char* gk_time2str | ( | time_t | time | ) |
Converts a time_t time into a string.
This function takes a time_t-specified time and returns a string-formated representation of the corresponding time. The format of the string is mm/dd/yyyy hh:mm:ss, in which the hours are in military time.
time | is the time to be converted. |
gk_wclock_t gk_WClockSeconds | ( | void | ) |
void gk_writealphacarbons | ( | pdbf * | p, |
char * | fname | ||
) |
void gk_writebackbone | ( | pdbf * | p, |
char * | fname | ||
) |
void gk_writefullatom | ( | pdbf * | p, |
char * | fname | ||
) |
void gk_zkvsortd | ( | size_t | n, |
gk_zkv_t * | base | ||
) |
void gk_zkvsorti | ( | size_t | n, |
gk_zkv_t * | base | ||
) |
void GKDecodeBase64 | ( | int | nbytes, |
unsigned char * | inbuffer, | ||
unsigned char * | outbuffer | ||
) |
void GKEncodeBase64 | ( | int | nbytes, |
unsigned char * | inbuffer, | ||
unsigned char * | outbuffer | ||
) |
gk_HTable_t* HTable_Create | ( | int | nelements | ) |
void HTable_Delete | ( | gk_HTable_t * | htable, |
int | key | ||
) |
void HTable_Destroy | ( | gk_HTable_t * | htable | ) |
int HTable_GetNext | ( | gk_HTable_t * | htable, |
int | key, | ||
int * | val, | ||
int | type | ||
) |
void HTable_Insert | ( | gk_HTable_t * | htable, |
int | key, | ||
int | val | ||
) |
void HTable_Reset | ( | gk_HTable_t * | htable | ) |
void HTable_Resize | ( | gk_HTable_t * | htable, |
int | nelements | ||
) |
int HTable_Search | ( | gk_HTable_t * | htable, |
int | key | ||
) |
int HTable_SearchAndDelete | ( | gk_HTable_t * | htable, |
int | key | ||
) |
int omp_get_dynamic | ( | void | ) |
int omp_get_max_threads | ( | void | ) |
int omp_get_nested | ( | void | ) |
int omp_get_num_procs | ( | void | ) |
int omp_get_num_threads | ( | void | ) |
int omp_get_thread_num | ( | void | ) |
int omp_in_parallel | ( | void | ) |
void omp_set_dynamic | ( | int | num_threads | ) |
void omp_set_nested | ( | int | nested | ) |
void omp_set_num_threads | ( | int | num_threads | ) |