int *grouping2;
nzok0 = nzok = *nrandom - 1;/* points that are within tolerance of real or artificial points */
grouping2 = MALLOC(sizeof(int)*(n + *nrandom));
- MEMCPY(grouping2, grouping, sizeof(int)*n);
+ memcpy(grouping2, grouping, sizeof(int)*n);
grouping = grouping2;
}
nn = n;
for (i = nh; i < n; i++){
grouping[i] = 2;
}
- MEMCPY(*xcombined, xtemp, n*dim*sizeof(real));
+ memcpy(*xcombined, xtemp, n*dim*sizeof(real));
*nrandom = *nrandom + n - nh;/* count everything except cluster HIGHLIGHT_SET as random */
n = nh;
if (Verbose) fprintf(stderr,"nh = %d\n",nh);
#include "general.h"
#include "QuadTree.h"
#include "furtherest_point.h"
+#include <string.h>
static real dist(int dim, real *x, real *y){
int k;
qt->total_weight = *dist_max = distance_to_group(k, dim, wgt, pts, center, usr_dist);/* store distance in total_weight */
if (!(*argmax)) *argmax = MALLOC(sizeof(real)*dim);
- MEMCPY(*argmax, center, sizeof(real)*dim);
+ memcpy(*argmax, center, sizeof(real)*dim);
candidates = MALLOC(sizeof(qt)*ncandidates_max);
candidates2 = MALLOC(sizeof(qt)*ncandidates2_max);
for (j = 0; j < dim; j++) fprintf(stderr,"%f, ", qt->qts[ii]->center[j]);
fprintf(stderr,"}\n");
}
- MEMCPY(*argmax, qt->qts[ii]->center, sizeof(real)*dim);
+ memcpy(*argmax, qt->qts[ii]->center, sizeof(real)*dim);
} else if (distance + wmax*sqrt(((real) dim))*(qt->width)/2 < *dist_max){
pruned = TRUE;
}
average = qt->average;
qt->total_weight = *dist_max = distance_to_group(k, dim, wgt, pts, average, usr_dist);/* store distance in total_weight */
if (!(*argmax)) *argmax = MALLOC(sizeof(real)*dim);
- MEMCPY(*argmax, average, sizeof(real)*dim);
+ memcpy(*argmax, average, sizeof(real)*dim);
candidates = MALLOC(sizeof(qt)*ncandidates_max);
candidates2 = MALLOC(sizeof(qt)*ncandidates2_max);
for (j = 0; j < dim; j++) fprintf(stderr,"%f, ", qt->qts[ii]->average[j]);
fprintf(stderr,"}\n");
}
- MEMCPY(*argmax, qt->qts[ii]->average, sizeof(real)*dim);
+ memcpy(*argmax, qt->qts[ii]->average, sizeof(real)*dim);
} else if (distance + wmax*sqrt(((real) dim))*(qt->width) < *dist_max){/* average feasible point in this square is too close to the point set */
pruned = TRUE;
}
#include "lab.h"
#include "furtherest_point.h"
#include "color_palette.h"
+#include <string.h>
#ifndef _WIN32
inline
k = 0;
for (j = ia[i]; j < ia[i+1]; j++){
if (ja[j] == i) continue;
- MEMCPY(&(x[k*cdim]), &(colors[ja[j]*cdim]), sizeof(real)*cdim);
+ memcpy(&(x[k*cdim]), &(colors[ja[j]*cdim]), sizeof(real)*cdim);
if (wgt && a) wgt[k] = a[j];
k++;
}
for (j = comps_ptr[i]; j < comps_ptr[i+1]; j++){
jj = j - comps_ptr[i];
- MEMCPY(&((*colors)[comps[j]*cdim]), &(ctmp[jj*cdim]), cdim*sizeof(real));
+ memcpy(&((*colors)[comps[j]*cdim]), &(ctmp[jj*cdim]), cdim*sizeof(real));
}
SparseMatrix_delete(B);
}
#include "ink.h"
#include "agglomerative_bundling.h"
#include "nearest_neighbor_graph.h"
+#include <string.h>
#if OPENGL
#include "gl.h"
if (ip && jp){/* not the first level */
ni = (ip[i+1] - ip[i]);/* number of edges represented by i */
nj = (ip[jj+1] - ip[jj]);/* number of edges represented by jj */
- MEMCPY(pick, &(jp[ip[i]]), sizeof(int)*ni);
- MEMCPY(pick+ni, &(jp[ip[jj]]), sizeof(int)*nj);
+ memcpy(pick, &(jp[ip[i]]), sizeof(int)*ni);
+ memcpy(pick+ni, &(jp[ip[jj]]), sizeof(int)*nj);
} else {/* first level */
pick[0] = i; pick[1] = jj;
ni = nj = 1;
if (Verbose && DEBUG) fprintf(stderr, "ink(%d)=%f, ink(%d->%d)=%f", i, inki, jj, jc, inkj);
if (ip) {
ni = (ip[i+1] - ip[i]);/* number of edges represented by i */
- MEMCPY(pick, &(jp[ip[i]]), sizeof(int)*ni);
+ memcpy(pick, &(jp[ip[i]]), sizeof(int)*ni);
} else {
ni = 1; pick[0] = i;
}
if (ip && jp){/* not the first level */
ni = (ip[i+1] - ip[i]);/* number of edges represented by i */
nj = (ip[jj+1] - ip[jj]);/* number of edges represented by jj */
- MEMCPY(pick, &(jp[ip[i]]), sizeof(int)*ni);
- MEMCPY(pick+ni, &(jp[ip[jj]]), sizeof(int)*nj);
+ memcpy(pick, &(jp[ip[i]]), sizeof(int)*ni);
+ memcpy(pick+ni, &(jp[ip[jj]]), sizeof(int)*nj);
} else {/* first level */
pick[0] = i; pick[1] = jj;
ni = nj = 1;
if (Verbose && DEBUG) fprintf(stderr, "ink(%d)=%f, ink(%d->%d)=%f", i, inki, jj, jc, inkj);
if (ip) {
ni = (ip[i+1] - ip[i]);/* number of edges represented by i */
- MEMCPY(pick, &(jp[ip[i]]), sizeof(int)*ni);
+ memcpy(pick, &(jp[ip[i]]), sizeof(int)*ni);
} else {
ni = 1; pick[0] = i;
}
#include "clustering.h"
#include "ink.h"
#include "agglomerative_bundling.h"
+#include <string.h>
#define SMALL 1.e-10
e->dim = dim;
e->len = np;
e->x = MALLOC(dim*(e->len)*sizeof(real));
- MEMCPY(e->x, x, dim*(e->len)*sizeof(real));
+ memcpy(e->x, x, dim*(e->len)*sizeof(real));
e->edge_length = dist(dim, &(x[0*dim]), &(x[(np-1)*dim]));
e->wgt = 1.;
e->wgts = NULL;
e->dim = dim;
e->len = np;
e->x = MALLOC(dim*(e->len)*sizeof(real));
- MEMCPY(e->x, x, dim*(e->len)*sizeof(real));
+ memcpy(e->x, x, dim*(e->len)*sizeof(real));
e->edge_length = dist(dim, &(x[0*dim]), &(x[(np-1)*dim]));
e->wgt = wgt;
e->wgts = MALLOC(sizeof(real)*(np - 1));
y = MALLOC(sizeof(real)*e->dim);
for (i = 0; i < (e->npoints)/2; i++){
- MEMCPY(y, &(x[i*dim]), sizeof(real)*dim);
- MEMCPY(&(x[(n-1-i)*dim]), &(x[i*dim]), sizeof(real)*dim);
- MEMCPY(&(x[i*dim]), y, sizeof(real)*dim);
+ memcpy(y, &(x[i*dim]), sizeof(real)*dim);
+ memcpy(&(x[(n-1-i)*dim]), &(x[i*dim]), sizeof(real)*dim);
+ memcpy(&(x[i*dim]), y, sizeof(real)*dim);
}
FREE(y);
return e;
x0 = N_GNEW(dim*m,real);
if (!x0) goto RETURN;
- x0 = MEMCPY(x0, x, sizeof(real)*dim*m);
+ memcpy(x0, x, sizeof(real)*dim*m);
y = N_GNEW(dim*m,real);
if (!y) goto RETURN;
#endif
- MEMCPY(x, y, sizeof(real)*m*dim);
+ memcpy(x, y, sizeof(real)*m*dim);
}
#ifdef DEBUG
beta = rho/rho_old;
p = vector_saxpy(n, z, p, beta);
} else {
- MEMCPY(p, z, sizeof(real)*n);
+ memcpy(p, z, sizeof(real)*n);
}
q = Ax(A, p, q);
y[i] = (b[i] - sum)/diag;
}
- MEMCPY(x, y, sizeof(real)*n);
+ memcpy(x, y, sizeof(real)*n);
}
for (i = 0; i < n; i++) {
#endif
iter++;
- xold = MEMCPY(xold, x, sizeof(real)*dim*n);
+ memcpy(xold, x, sizeof(real)*dim*n);
Fnorm0 = Fnorm;
Fnorm = 0.;
for (i = 0; i < dim*n; i++) force[i] = 0;
iter++;
- xold = MEMCPY(xold, x, sizeof(real)*dim*n);
+ memcpy(xold, x, sizeof(real)*dim*n);
Fnorm0 = Fnorm;
Fnorm = 0.;
nsuper_avg = 0;
#endif
iter++;
- xold = MEMCPY(xold, x, sizeof(real)*dim*n);
+ memcpy(xold, x, sizeof(real)*dim*n);
Fnorm0 = Fnorm;
Fnorm = 0.;
nsuper_avg = 0;
xold = MALLOC(sizeof(real)*dim*n);
do {
iter++;
- xold = MEMCPY(xold, x, sizeof(real)*dim*n);
+ memcpy(xold, x, sizeof(real)*dim*n);
Fnorm0 = Fnorm;
Fnorm = 0.;
nsuper_avg = 0;
xold = MALLOC(sizeof(real)*dim*n);
do {
iter++;
- xold = MEMCPY(xold, x, sizeof(real)*dim*n);
+ memcpy(xold, x, sizeof(real)*dim*n);
Fnorm0 = Fnorm;
Fnorm = 0.;
nsuper_avg = 0;
ia[irn[i]+1]++;
}
for (i = 0; i < m; i++) ia[i+1] += ia[i];
- MEMCPY(A->a, val0, A->size*((size_t)nz));
+ memcpy(A->a, val0, A->size*((size_t)nz));
for (i = 0; i < nz; i++){
ja[ia[irn[i]]++] = jcn[i];
}
int i, j;
real *u;
u = MALLOC(sizeof(real)*((size_t) m)*((size_t) n));
- MEMCPY(u,v, sizeof(real)*((size_t) m)*((size_t) n));
+ memcpy(u,v, sizeof(real)*((size_t) m)*((size_t) n));
for (i = 0; i < m; i++){
for (j = 0; j < n; j++){
nzmax = MAX(10, (int) 0.2*nzmax) + nzmax;
A = SparseMatrix_realloc(A, nzmax);
}
- MEMCPY((char*) A->ia + ((size_t)nz)*sizeof(int)/sizeof(char), irn, sizeof(int)*((size_t)nentries));
- MEMCPY((char*) A->ja + ((size_t)nz)*sizeof(int)/sizeof(char), jcn, sizeof(int)*((size_t)nentries));
- if (A->size) MEMCPY((char*) A->a + ((size_t)nz)*A->size/sizeof(char), val, A->size*((size_t)nentries));
+ memcpy((char*) A->ia + ((size_t)nz)*sizeof(int)/sizeof(char), irn, sizeof(int)*((size_t)nentries));
+ memcpy((char*) A->ja + ((size_t)nz)*sizeof(int)/sizeof(char), jcn, sizeof(int)*((size_t)nentries));
+ if (A->size) memcpy((char*) A->a + ((size_t)nz)*A->size/sizeof(char), val, A->size*((size_t)nentries));
for (i = 0; i < nentries; i++) {
if (irn[i] >= A->m) A->m = irn[i]+1;
if (jcn[i] >= A->n) A->n = jcn[i]+1;
B = SparseMatrix_new(m, n, nz, MATRIX_TYPE_PATTERN, FORMAT_CSR);
- MEMCPY(B->ia, ia, sizeof(int)*((size_t)(m+1)));
- MEMCPY(B->ja, ja, sizeof(int)*((size_t)nz));
+ memcpy(B->ia, ia, sizeof(int)*((size_t)(m+1)));
+ memcpy(B->ja, ja, sizeof(int)*((size_t)nz));
B->nz = A->nz;
A = SparseMatrix_symmetrize(B, TRUE);
SparseMatrix B;
if (!A) return A;
B = SparseMatrix_general_new(A->m, A->n, A->nz, A->type, A->size, A->format);
- MEMCPY(B->ia, A->ia, sizeof(int)*((size_t)(A->m+1)));
- MEMCPY(B->ja, A->ja, sizeof(int)*((size_t)(A->ia[A->m])));
- if (A->a) MEMCPY(B->a, A->a, A->size*((size_t)A->nz));
+ memcpy(B->ia, A->ia, sizeof(int)*((size_t)(A->m+1)));
+ memcpy(B->ja, A->ja, sizeof(int)*((size_t)(A->ia[A->m])));
+ if (A->a) memcpy(B->a, A->a, A->size*((size_t)A->nz));
B->property = A->property;
B->nz = A->nz;
return B;
if (A->a){
assert(A->size != 0 && nz > 0);
val = MALLOC(A->size*2*((size_t)nz));
- MEMCPY(val, A->a, A->size*((size_t)nz));
- MEMCPY((void*)(((char*) val) + ((size_t)nz)*A->size), A->a, A->size*((size_t)nz));
+ memcpy(val, A->a, A->size*((size_t)nz));
+ memcpy((void*)(((char*) val) + ((size_t)nz)*A->size), A->a, A->size*((size_t)nz));
}
nz = 0;
res = 0;
for (i = 0; i < n; i++) res += ABS(x[i] - y[i]);
if (Verbose) fprintf(stderr,"page rank iter -- %d, res = %f\n",iter, res);
- MEMCPY(x, y, sizeof(real)*n);
+ memcpy(x, y, sizeof(real)*n);
} while (res > epsilon);
FREE(y);
#endif /* STANDALONE */
#define FREE free
-#define MEMCPY memcpy
#ifndef DEBUG
#ifndef NDEBUG
#include "SparseMatrix.h"
#include "mq.h"
#include "LinkedList.h"
+#include <string.h>
static real get_mq(SparseMatrix A, int *assignment, int *ncluster0, real *mq_in0, real *mq_out0, real **dout0){
/* given a symmetric matrix representation of a graph and an assignment of nodes into clusters, calculate the modularity quality.
double mq2, mq_in2, mq_out2, *dout2;
int *matching2, nc2 = nc;
matching2 = MALLOC(sizeof(int)*A->m);
- matching2 = MEMCPY(matching2, matching, sizeof(real)*A->m);
+ memcpy(matching2, matching, sizeof(real)*A->m);
if (jc != UNMATCHED) {
matching2[i] = jc;
} else {