summaryrefslogtreecommitdiff
path: root/src/fracture.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/fracture.h')
-rw-r--r--src/fracture.h102
1 files changed, 51 insertions, 51 deletions
diff --git a/src/fracture.h b/src/fracture.h
index 93e2ed1..349e59e 100644
--- a/src/fracture.h
+++ b/src/fracture.h
@@ -37,33 +37,33 @@ typedef enum bound_t {
} bound_t;
typedef struct {
- unsigned int num_edges;
- unsigned int num_verts;
- unsigned int num_verts_break;
- unsigned int num_bounds;
- unsigned int *edges_to_verts;
- unsigned int *edges_to_verts_break;
- unsigned int *verts_to_edges_ind;
- unsigned int *verts_to_edges;
- unsigned int *bound_inds;
- unsigned int *bound_verts;
+ uint_t ne;
+ uint_t nv;
+ uint_t dnv;
+ uint_t nv_break;
+ uint_t num_bounds;
+ uint_t *ev;
+ uint_t *ev_break;
+ uint_t *vei;
+ uint_t *ve;
+ uint_t *bound_inds;
+ uint_t *bound_verts;
double *vert_coords;
double *edge_coords;
- unsigned int *dual_edges_to_verts;
- unsigned int *dual_verts_to_edges_ind;
- unsigned int *dual_verts_to_edges;
+ uint_t *dev;
+ uint_t *dvei;
+ uint_t *dve;
double *dual_vert_coords;
- unsigned int num_spanning_edges;
- unsigned int *spanning_edges;
+ uint_t num_spanning_edges;
+ uint_t *spanning_edges;
double L;
- unsigned int num_dual_verts;
- unsigned int break_dim;
+ uint_t break_dim;
cholmod_sparse *voltcurmat;
bound_t boundary;
-} fnet;
+} graph_t;
typedef struct {
- fnet *network;
+ graph_t *graph;
unsigned int num_remaining_edges;
bool *fuses;
double inf;
@@ -75,14 +75,14 @@ typedef struct {
unsigned int num_components;
cholmod_sparse *adjacency;
bool debug_stop;
-} finst;
+} net_t;
typedef struct {
unsigned int num_broken;
unsigned int *break_list;
double *conductivity;
double *extern_field;
-} break_data;
+} data_t;
intptr_t *run_voronoi(unsigned int num_coords, double *coords, bool periodic, double xmin, double xmax, double ymin, double ymax);
@@ -91,10 +91,10 @@ int update_components(const cholmod_sparse *laplacian, unsigned int *marks,
unsigned int *find_components(const cholmod_sparse *laplacian, unsigned int skip);
-cholmod_sparse *gen_adjacency(const finst *instance, bool dual, bool breakv,
+cholmod_sparse *gen_adjacency(const net_t *instance, bool dual, bool breakv,
unsigned int pad, cholmod_common *c);
-cholmod_sparse *gen_laplacian(const finst *instance, cholmod_common *c,
+cholmod_sparse *gen_laplacian(const net_t *instance, cholmod_common *c,
bool symmetric);
int edge_to_verts(unsigned int width, bool periodic, unsigned int edge,
@@ -109,20 +109,20 @@ double dual_vert_to_coord(unsigned int width, bool periodic, unsigned int vert,
bool update_factor(cholmod_factor *factor, unsigned int v1, unsigned int v2,
cholmod_common *c);
-break_data *fracture_network(finst *instance, double *fuse_thres,
+data_t *fracture_network(net_t *instance, double *fuse_thres,
cholmod_common *c, double cutoff);
-double *get_current(const finst *instance, cholmod_common *c);
-double *get_current_v(const finst *instance, double *voltages, cholmod_common *c);
-double *get_voltage(const finst *instance, cholmod_common *c);
+double *get_current(const net_t *instance, cholmod_common *c);
+double *get_current_v(const net_t *instance, double *voltages, cholmod_common *c);
+double *get_voltage(const net_t *instance, cholmod_common *c);
double *gen_fuse_thres(unsigned int num_edges, double *edge_coords, double beta,
double (*beta_scale)(double, double, double));
-bool gen_crack(finst *instance, double crack_len, double crack_width,
+bool gen_crack(net_t *instance, double crack_len, double crack_width,
cholmod_common *c);
-void update_boundary(finst *instance, const double *avg_field);
+void update_boundary(net_t *instance, const double *avg_field);
FILE *get_file(const char *prefix, unsigned int width, unsigned int crack,
double beta, unsigned int iter, unsigned int num_iter,
@@ -134,32 +134,32 @@ double update_beta(double beta, unsigned int width, const double *stress,
cholmod_sparse *gen_voltcurmat(unsigned int num_edges, unsigned int num_verts,
unsigned int *edges_to_verts, cholmod_common *c);
-finst *copy_instance(const finst *instance, cholmod_common *c);
+net_t *copy_instance(const net_t *instance, cholmod_common *c);
-fnet *ini_square_network(unsigned int width, bound_t boundary, bool side_bounds,
+graph_t *ini_square_network(unsigned int width, bound_t boundary, bool side_bounds,
cholmod_common *c);
-void free_fnet(fnet *network, cholmod_common *c);
-void free_instance(finst *instance, cholmod_common *c);
+void free_net(graph_t *network, cholmod_common *c);
+void free_instance(net_t *instance, cholmod_common *c);
-finst *create_instance(fnet *network, double inf, bool voltage_bound,
+net_t *create_instance(graph_t *network, double inf, bool voltage_bound,
bool startnow, cholmod_common *c);
-fnet *ini_voronoi_network(unsigned int L, bound_t boundary, bool use_dual,
+graph_t *ini_voronoi_network(unsigned int L, bound_t boundary, bool use_dual,
double *(*genfunc)(unsigned int, bound_t, gsl_rng *, unsigned int *),
cholmod_common *c);
-bool check_instance(const finst *instance, cholmod_common *c);
+bool check_instance(const net_t *instance, cholmod_common *c);
-bool break_edge(finst *instance, unsigned int edge, cholmod_common *c);
+bool break_edge(net_t *instance, unsigned int edge, cholmod_common *c);
-void finish_instance(finst *instance, cholmod_common *c);
+void finish_instance(net_t *instance, cholmod_common *c);
-finst *coursegrain_square(finst *instance, fnet *network_p, cholmod_common *c);
+net_t *coursegrain_square(net_t *instance, graph_t *network_p, cholmod_common *c);
-unsigned int *get_clusters(finst *instance, cholmod_common *c);
+unsigned int *get_clusters(net_t *instance, cholmod_common *c);
-unsigned int *get_cluster_dist(finst *instance, cholmod_common *c);
+unsigned int *get_cluster_dist(net_t *instance, cholmod_common *c);
double *genfunc_uniform(unsigned int L, bound_t boundary, gsl_rng *r, unsigned int *num);
double *genfunc_hyperuniform(unsigned int L, bound_t boundary, gsl_rng *r, unsigned int *num);
@@ -169,18 +169,18 @@ double beta_scaling_flat(double beta, double x, double y);
double beta_scaling_gaus(double beta, double x, double y);
double beta_mag(double beta);
-unsigned int *dijkstra(fnet *network, unsigned int source);
-unsigned int **get_dists(fnet *network);
-double *get_corr(finst *instance, unsigned int **dists, cholmod_common *c);
+unsigned int *dijkstra(graph_t *network, unsigned int source);
+unsigned int **get_dists(graph_t *network);
+double *get_corr(net_t *instance, unsigned int **dists, cholmod_common *c);
-double *bin_values(fnet *network, unsigned int width, double *values);
+double *bin_values(graph_t *network, unsigned int width, double *values);
-void voronoi_bound_ini(finst *instance, uint_t L, double crack_len);
+void voronoi_bound_ini(net_t *instance, uint_t L, double crack_len);
-break_data *alloc_break_data(unsigned int num_edges);
-void free_break_data(break_data *data);
-void update_break_data(break_data *data, unsigned int last_broke, double strength, double conductivity);
+data_t *alloc_break_data(unsigned int num_edges);
+void free_break_data(data_t *data);
+void update_break_data(data_t *data, unsigned int last_broke, double strength, double conductivity);
-double get_conductivity(finst *inst, double *current, cholmod_common *c);
+double get_conductivity(net_t *inst, double *current, cholmod_common *c);
-void gen_voro_crack(finst *instance, double crack_len, cholmod_common *c);
+void gen_voro_crack(net_t *instance, double crack_len, cholmod_common *c);