Graphviz 12.0.1~dev.20240716.0800
Loading...
Searching...
No Matches
post_process.h File Reference
#include <sfdpgen/spring_electrical.h>
#include <stdbool.h>
Include dependency graph for post_process.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  StressMajorizationSmoother_struct
 
struct  SpringSmoother_struct
 

Macros

#define TriangleSmoother_struct   StressMajorizationSmoother_struct
 
#define SparseStressMajorizationSmoother_struct   StressMajorizationSmoother_struct
 

Typedefs

typedef struct StressMajorizationSmoother_structStressMajorizationSmoother
 
typedef StressMajorizationSmoother TriangleSmoother
 
typedef struct SpringSmoother_structSpringSmoother
 
typedef StressMajorizationSmoother SparseStressMajorizationSmoother
 

Enumerations

enum  { SM_SCHEME_NORMAL , SM_SCHEME_NORMAL_ELABEL , SM_SCHEME_STRESS }
 
enum  { IDEAL_GRAPH_DIST , IDEAL_AVG_DIST , IDEAL_POWER_DIST }
 

Functions

void StressMajorizationSmoother_delete (StressMajorizationSmoother sm)
 
StressMajorizationSmoother StressMajorizationSmoother2_new (SparseMatrix A, int dim, double lambda, double *x, int ideal_dist_scheme)
 
double StressMajorizationSmoother_smooth (StressMajorizationSmoother sm, int dim, double *x, int maxit)
 
void TriangleSmoother_delete (TriangleSmoother sm)
 
TriangleSmoother TriangleSmoother_new (SparseMatrix A, int dim, double *x, bool use_triangularization)
 
void TriangleSmoother_smooth (TriangleSmoother sm, int dim, double *x)
 
SpringSmoother SpringSmoother_new (SparseMatrix A, int dim, spring_electrical_control ctrl, double *x)
 
void SpringSmoother_delete (SpringSmoother sm)
 
void SpringSmoother_smooth (SpringSmoother sm, SparseMatrix A, int dim, double *x)
 
void post_process_smoothing (int dim, SparseMatrix A, spring_electrical_control ctrl, double *x)
 
void SparseStressMajorizationSmoother_delete (SparseStressMajorizationSmoother sm)
 
SparseStressMajorizationSmoother SparseStressMajorizationSmoother_new (SparseMatrix A, int dim, double *x)
 
double SparseStressMajorizationSmoother_smooth (SparseStressMajorizationSmoother sm, int dim, double *x, int maxit_sm)
 

Macro Definition Documentation

◆ SparseStressMajorizationSmoother_struct

#define SparseStressMajorizationSmoother_struct   StressMajorizationSmoother_struct

Definition at line 76 of file post_process.h.

◆ TriangleSmoother_struct

#define TriangleSmoother_struct   StressMajorizationSmoother_struct

Definition at line 44 of file post_process.h.

Typedef Documentation

◆ SparseStressMajorizationSmoother

◆ SpringSmoother

Definition at line 62 of file post_process.h.

◆ StressMajorizationSmoother

◆ TriangleSmoother

Definition at line 42 of file post_process.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
SM_SCHEME_NORMAL 
SM_SCHEME_NORMAL_ELABEL 
SM_SCHEME_STRESS 

Definition at line 16 of file post_process.h.

◆ anonymous enum

anonymous enum
Enumerator
IDEAL_GRAPH_DIST 
IDEAL_AVG_DIST 
IDEAL_POWER_DIST 

Definition at line 37 of file post_process.h.

Function Documentation

◆ post_process_smoothing()

void post_process_smoothing ( int  dim,
SparseMatrix  A,
spring_electrical_control  ctrl,
double *  x 
)

Definition at line 912 of file post_process.c.

References A, IDEAL_AVG_DIST, IDEAL_GRAPH_DIST, IDEAL_POWER_DIST, spring_electrical_control_struct::smoothing, SMOOTHING_RNG, SMOOTHING_SPRING, SMOOTHING_STRESS_MAJORIZATION_AVG_DIST, SMOOTHING_STRESS_MAJORIZATION_GRAPH_DIST, SMOOTHING_STRESS_MAJORIZATION_POWER_DIST, SMOOTHING_TRIANGLE, SpringSmoother_delete(), SpringSmoother_new(), SpringSmoother_smooth(), StressMajorizationSmoother2_new(), StressMajorizationSmoother_delete(), StressMajorizationSmoother_smooth(), TriangleSmoother_delete(), TriangleSmoother_new(), TriangleSmoother_smooth(), and Verbose.

Referenced by multilevel_spring_electrical_embedding().

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

◆ SparseStressMajorizationSmoother_delete()

void SparseStressMajorizationSmoother_delete ( SparseStressMajorizationSmoother  sm)

Definition at line 405 of file post_process.c.

References StressMajorizationSmoother_delete().

Referenced by stress_model().

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

◆ SparseStressMajorizationSmoother_new()

SparseStressMajorizationSmoother SparseStressMajorizationSmoother_new ( SparseMatrix  A,
int  dim,
double *  x 
)

◆ SparseStressMajorizationSmoother_smooth()

double SparseStressMajorizationSmoother_smooth ( SparseStressMajorizationSmoother  sm,
int  dim,
double *  x,
int  maxit_sm 
)

Definition at line 410 of file post_process.c.

References StressMajorizationSmoother_smooth().

Referenced by stress_model().

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

◆ SpringSmoother_delete()

void SpringSmoother_delete ( SpringSmoother  sm)

Definition at line 893 of file post_process.c.

References SpringSmoother_struct::ctrl, SpringSmoother_struct::D, SparseMatrix_delete(), and spring_electrical_control_delete().

Referenced by post_process_smoothing(), and SpringSmoother_new().

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

◆ SpringSmoother_new()

SpringSmoother SpringSmoother_new ( SparseMatrix  A,
int  dim,
spring_electrical_control  ctrl,
double *  x 
)

Definition at line 787 of file post_process.c.

References A, SparseMatrix_struct::a, SpringSmoother_struct::ctrl, SpringSmoother_struct::D, distance(), FORMAT_CSR, free(), gv_alloc(), gv_calloc(), SparseMatrix_struct::ia, ID, id, ideal_distance_matrix(), SparseMatrix_struct::ja, MATRIX_TYPE_REAL, spring_electrical_control_struct::maxiter, spring_electrical_control_struct::multilevels, NULL, SparseMatrix_struct::nz, spring_electrical_control_struct::random_start, SparseMatrix_delete(), SparseMatrix_is_symmetric(), SparseMatrix_new(), spring_electrical_control_new(), SpringSmoother_delete(), and spring_electrical_control_struct::step.

Referenced by post_process_smoothing().

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

◆ SpringSmoother_smooth()

void SpringSmoother_smooth ( SpringSmoother  sm,
SparseMatrix  A,
int  dim,
double *  x 
)

Definition at line 902 of file post_process.c.

References A, SpringSmoother_struct::ctrl, SpringSmoother_struct::D, and spring_electrical_spring_embedding().

Referenced by post_process_smoothing().

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

◆ StressMajorizationSmoother2_new()

◆ StressMajorizationSmoother_delete()

void StressMajorizationSmoother_delete ( StressMajorizationSmoother  sm)

Definition at line 668 of file post_process.c.

References StressMajorizationSmoother_struct::data, StressMajorizationSmoother_struct::data_deallocator, free(), StressMajorizationSmoother_struct::lambda, StressMajorizationSmoother_struct::Lw, StressMajorizationSmoother_struct::Lwd, and SparseMatrix_delete().

Referenced by post_process_smoothing(), SparseStressMajorizationSmoother_delete(), SparseStressMajorizationSmoother_new(), StressMajorizationSmoother2_new(), and TriangleSmoother_delete().

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

◆ StressMajorizationSmoother_smooth()

◆ TriangleSmoother_delete()

void TriangleSmoother_delete ( TriangleSmoother  sm)

Definition at line 776 of file post_process.c.

References StressMajorizationSmoother_delete().

Referenced by post_process_smoothing(), and TriangleSmoother_new().

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

◆ TriangleSmoother_new()

TriangleSmoother TriangleSmoother_new ( SparseMatrix  A,
int  dim,
double *  x,
bool  use_triangularization 
)

◆ TriangleSmoother_smooth()

void TriangleSmoother_smooth ( TriangleSmoother  sm,
int  dim,
double *  x 
)

Definition at line 782 of file post_process.c.

References StressMajorizationSmoother_smooth().

Referenced by post_process_smoothing().

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