Graphviz 13.0.0~dev.20241220.2304
Loading...
Searching...
No Matches
general.c File Reference
#include <math.h>
#include <stdbool.h>
#include <stddef.h>
#include <sparse/general.h>
#include <errno.h>
#include <util/alloc.h>
Include dependency graph for general.c:

Go to the source code of this file.

Functions

double drand (void)
 
int irand (int n)
 
int * random_permutation (int n)
 
double * vector_subtract_to (int n, double *x, double *y)
 
double vector_product (int n, double *x, double *y)
 
double * vector_saxpy (int n, double *x, double *y, double beta)
 
double * vector_saxpy2 (int n, double *x, double *y, double beta)
 
void vector_float_take (int n, float *v, int m, int *p, float **u)
 
static int comp_ascend (const void *s1, const void *s2)
 
static int comp_ascend_int (const void *s1, const void *s2)
 
void vector_ordering (int n, double *v, int **p)
 
void vector_sort_int (int n, int *v)
 
double distance_cropped (double *x, int dim, int i, int j)
 
double distance (double *x, int dim, int i, int j)
 
double point_distance (double *p1, double *p2, int dim)
 
char * strip_dir (char *s)
 

Function Documentation

◆ comp_ascend()

static int comp_ascend ( const void *  s1,
const void *  s2 
)
static

Definition at line 91 of file general.c.

References s1().

Referenced by vector_ordering().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ comp_ascend_int()

static int comp_ascend_int ( const void *  s1,
const void *  s2 
)
static

Definition at line 103 of file general.c.

References s1().

Referenced by vector_sort_int().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ distance()

double distance ( double *  x,
int  dim,
int  i,
int  j 
)

Definition at line 145 of file general.c.

References dim, and dist().

Referenced by beautify_leaves(), dist_from_foci(), distance_cropped(), distance_to_group(), furtherest_point(), furtherest_point_in_list(), get_stress(), ideal_distance_matrix(), makeDotGraph(), SparseStressMajorizationSmoother_new(), spring_electrical_embedding(), spring_electrical_embedding_fast(), spring_electrical_embedding_slow(), spring_electrical_spring_embedding(), SpringSmoother_new(), StressMajorizationSmoother2_new(), StressMajorizationSmoother_smooth(), and TriangleSmoother_new().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ distance_cropped()

double distance_cropped ( double *  x,
int  dim,
int  i,
int  j 
)

Definition at line 140 of file general.c.

References dim, dist(), distance(), and MINDIST.

Referenced by get_edge_label_matrix(), improve_contiguity(), QuadTree_repulsive_force_interact(), spring_electrical_embedding(), spring_electrical_embedding_slow(), spring_electrical_spring_embedding(), StressMajorizationSmoother2_new(), and TriangleSmoother_new().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drand()

double drand ( void  )

Definition at line 22 of file general.c.

◆ irand()

int irand ( int  n)

Definition at line 26 of file general.c.

Referenced by node_distinct_coloring_internal(), and random_permutation().

Here is the caller graph for this function:

◆ point_distance()

double point_distance ( double *  p1,
double *  p2,
int  dim 
)

Definition at line 153 of file general.c.

References dim, and dist().

Referenced by QuadTree_get_nearest_internal(), QuadTree_get_supernodes_internal(), and QuadTree_repulsive_force_interact().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ random_permutation()

int * random_permutation ( int  n)

Definition at line 33 of file general.c.

References gv_calloc(), irand(), len(), and NULL.

Referenced by maximal_independent_edge_set_heavest_edge_pernode_supernodes_first().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ strip_dir()

char * strip_dir ( char *  s)

Definition at line 161 of file general.c.

Referenced by makeDotGraph().

Here is the caller graph for this function:

◆ vector_float_take()

void vector_float_take ( int  n,
float *  v,
int  m,
int *  p,
float **  u 
)

Definition at line 78 of file general.c.

References gv_calloc().

Referenced by map_optimal_coloring().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ vector_ordering()

void vector_ordering ( int  n,
double *  v,
int **  p 
)

Definition at line 115 of file general.c.

References comp_ascend(), free(), and gv_calloc().

Referenced by country_graph_coloring().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ vector_product()

double vector_product ( int  n,
double *  x,
double *  y 
)

Definition at line 57 of file general.c.

Referenced by conjugate_gradient(), power_method(), and StressMajorizationSmoother_smooth().

Here is the caller graph for this function:

◆ vector_saxpy()

double * vector_saxpy ( int  n,
double *  x,
double *  y,
double  beta 
)

Definition at line 64 of file general.c.

Referenced by conjugate_gradient().

Here is the caller graph for this function:

◆ vector_saxpy2()

double * vector_saxpy2 ( int  n,
double *  x,
double *  y,
double  beta 
)

Definition at line 71 of file general.c.

Referenced by conjugate_gradient().

Here is the caller graph for this function:

◆ vector_sort_int()

void vector_sort_int ( int  n,
int *  v 
)

Definition at line 136 of file general.c.

References comp_ascend_int().

Referenced by ink().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ vector_subtract_to()

double * vector_subtract_to ( int  n,
double *  x,
double *  y 
)

Definition at line 51 of file general.c.

Referenced by conjugate_gradient().

Here is the caller graph for this function: