File: global.h

package info (click to toggle)
grass 8.4.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 277,040 kB
  • sloc: ansic: 460,798; python: 227,732; cpp: 42,026; sh: 11,262; makefile: 7,007; xml: 3,637; sql: 968; lex: 520; javascript: 484; yacc: 450; asm: 387; perl: 157; sed: 25; objc: 6; ruby: 4
file content (45 lines) | stat: -rw-r--r-- 1,969 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <grass/gis.h>

#define NODE_NONE                   0
/* According Okabe 2009 */
#define NODE_SIMILAR                1
#define NODE_EQUAL_SPLIT            2
#define NODE_CONTINUOUS_EQUAL_SPLIT 3

#define KERNEL_UNIFORM              0
#define KERNEL_TRIANGULAR           1
#define KERNEL_EPANECHNIKOV         2
#define KERNEL_QUARTIC              3
#define KERNEL_TRIWEIGHT            4
#define KERNEL_GAUSSIAN             5
#define KERNEL_COSINE               6

void setKernelFunction(int function, int dimension, double bandwidth,
                       double *term);
double kernelFunction(double term, double bandwidth, double x);

double euclidean_distance(double *x, double *y, int n);
double gaussian2dBySigma(double d, double sigma);
double gaussianFunction(double x, double sigma, double dimension);
double gaussianKernel(double x, double term);

double invGaussian2d(double sigma, double prob);
double gaussian2dByTerms(double d, double term1, double term2);
double brent_iterate(double (*f)(double), double x_lower, double x_upper,
                     int maxiter);
double kernel1(double d, double rs, double lambda);
double segno(double x);

/* main.c */
int read_points(struct Map_info *In, double ***coordinate, double dsize);
double compute_all_distances(double **coordinate, double **dists, int n,
                             double dmax);
double compute_all_net_distances(struct Map_info *In, struct Map_info *Net,
                                 double netmax, double **dists, double dmax);
void compute_distance(double N, double E, double sigma, double term,
                      double *gaussian, double dmax, struct bound_box *box,
                      struct boxlist *NList);
void compute_net_distance(double x, double y, struct Map_info *In,
                          struct Map_info *Net, double netmax, double sigma,
                          double term, double *gaussian, double dmax,
                          int node_method);