Macros
metis/libmetis/macros.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define AND(a, b)   ((a) < 0 ? ((-(a))&(b)) : ((a)&(b)))
 
#define BNDDelete(nbnd, bndind, bndptr, vtx)   ListDelete(nbnd, bndind, bndptr, vtx)
 
#define BNDInsert(nbnd, bndind, bndptr, vtx)   ListInsert(nbnd, bndind, bndptr, vtx)
 
#define GETOPTION(options, idx, defval)   ((options) == NULL || (options)[idx] == -1 ? defval : (options)[idx])
 
#define HASHFCT(key, size)   ((key)%(size))
 
#define I2RUBFACTOR(ufactor)   (1.0+0.001*(ufactor))
 
#define ListDelete(n, lind, lptr, i)
 
#define ListInsert(n, lind, lptr, i)
 
#define OR(a, b)   ((a) < 0 ? -((-(a))|(b)) : ((a)|(b)))
 
#define SelectSafeTargetSubdomains(myrinfo, mynbrs, nads, adids, maxndoms, safetos, vtmp)
 
#define SWAP   gk_SWAP
 
#define UpdateAdjacentVertexInfoAndBND(ctrl, vid, adjlen, me, from, to, myrinfo, ewgt, nbnd, bndptr, bndind, bndtype)
 
#define UpdateMovedVertexInfoAndBND(i, from, k, to, myrinfo, mynbrs, where, nbnd, bndptr, bndind, bndtype)
 
#define UpdateQueueInfo(queue, vstatus, vid, me, from, to, myrinfo, oldnnbrs, nupd, updptr, updind, bndtype)
 
#define WCOREPOP   wspacepop(ctrl)
 
#define WCOREPUSH   wspacepush(ctrl)
 
#define XOR(a, b)   ((a) < 0 ? -((-(a))^(b)) : ((a)^(b)))
 

Macro Definition Documentation

◆ AND

#define AND (   a,
  b 
)    ((a) < 0 ? ((-(a))&(b)) : ((a)&(b)))

Definition at line 21 of file metis/libmetis/macros.h.

◆ BNDDelete

#define BNDDelete (   nbnd,
  bndind,
  bndptr,
  vtx 
)    ListDelete(nbnd, bndind, bndptr, vtx)

Definition at line 68 of file metis/libmetis/macros.h.

◆ BNDInsert

#define BNDInsert (   nbnd,
  bndind,
  bndptr,
  vtx 
)    ListInsert(nbnd, bndind, bndptr, vtx)

Definition at line 65 of file metis/libmetis/macros.h.

◆ GETOPTION

#define GETOPTION (   options,
  idx,
  defval 
)    ((options) == NULL || (options)[idx] == -1 ? defval : (options)[idx])

Definition at line 31 of file metis/libmetis/macros.h.

◆ HASHFCT

#define HASHFCT (   key,
  size 
)    ((key)%(size))

Definition at line 27 of file metis/libmetis/macros.h.

◆ I2RUBFACTOR

#define I2RUBFACTOR (   ufactor)    (1.0+0.001*(ufactor))

Definition at line 35 of file metis/libmetis/macros.h.

◆ ListDelete

#define ListDelete (   n,
  lind,
  lptr,
  i 
)
Value:
do { \
ASSERT(lptr[i] != -1); \
lind[lptr[i]] = lind[--(n)]; \
lptr[lind[n]] = lptr[i]; \
lptr[i] = -1; \
} while(0)

Definition at line 53 of file metis/libmetis/macros.h.

◆ ListInsert

#define ListInsert (   n,
  lind,
  lptr,
  i 
)
Value:
do { \
ASSERT(lptr[i] == -1); \
lind[n] = i; \
lptr[i] = (n)++;\
} while(0)

Definition at line 46 of file metis/libmetis/macros.h.

◆ OR

#define OR (   a,
  b 
)    ((a) < 0 ? -((-(a))|(b)) : ((a)|(b)))

Definition at line 22 of file metis/libmetis/macros.h.

◆ SelectSafeTargetSubdomains

#define SelectSafeTargetSubdomains (   myrinfo,
  mynbrs,
  nads,
  adids,
  maxndoms,
  safetos,
  vtmp 
)

This macro determines the set of subdomains that a vertex can move to without increasins the maxndoms.

Definition at line 222 of file metis/libmetis/macros.h.

◆ SWAP

#define SWAP   gk_SWAP

Definition at line 28 of file metis/libmetis/macros.h.

◆ UpdateAdjacentVertexInfoAndBND

#define UpdateAdjacentVertexInfoAndBND (   ctrl,
  vid,
  adjlen,
  me,
  from,
  to,
  myrinfo,
  ewgt,
  nbnd,
  bndptr,
  bndind,
  bndtype 
)

Definition at line 102 of file metis/libmetis/macros.h.

◆ UpdateMovedVertexInfoAndBND

#define UpdateMovedVertexInfoAndBND (   i,
  from,
  k,
  to,
  myrinfo,
  mynbrs,
  where,
  nbnd,
  bndptr,
  bndind,
  bndtype 
)
Value:
do { \
where[i] = to; \
myrinfo->ed += myrinfo->id-mynbrs[k].ed; \
SWAP(myrinfo->id, mynbrs[k].ed, j); \
if (mynbrs[k].ed == 0) \
mynbrs[k] = mynbrs[--myrinfo->nnbrs]; \
else \
mynbrs[k].pid = from; \
\
/* Update the boundary information. Both deletion and addition is \
allowed as this routine can be used for moving arbitrary nodes. */ \
if (bndtype == BNDTYPE_REFINE) { \
if (bndptr[i] != -1 && myrinfo->ed - myrinfo->id < 0) \
BNDDelete(nbnd, bndind, bndptr, i); \
if (bndptr[i] == -1 && myrinfo->ed - myrinfo->id >= 0) \
BNDInsert(nbnd, bndind, bndptr, i); \
} \
else { \
if (bndptr[i] != -1 && myrinfo->ed <= 0) \
BNDDelete(nbnd, bndind, bndptr, i); \
if (bndptr[i] == -1 && myrinfo->ed > 0) \
BNDInsert(nbnd, bndind, bndptr, i); \
} \
} while(0)

Definition at line 75 of file metis/libmetis/macros.h.

◆ UpdateQueueInfo

#define UpdateQueueInfo (   queue,
  vstatus,
  vid,
  me,
  from,
  to,
  myrinfo,
  oldnnbrs,
  nupd,
  updptr,
  updind,
  bndtype 
)

Definition at line 172 of file metis/libmetis/macros.h.

◆ WCOREPOP

#define WCOREPOP   wspacepop(ctrl)

Definition at line 39 of file metis/libmetis/macros.h.

◆ WCOREPUSH

#define WCOREPUSH   wspacepush(ctrl)

Definition at line 38 of file metis/libmetis/macros.h.

◆ XOR

#define XOR (   a,
  b 
)    ((a) < 0 ? -((-(a))^(b)) : ((a)^(b)))

Definition at line 23 of file metis/libmetis/macros.h.

n
int n
Definition: BiCGSTAB_simple.cpp:1
j
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2
BNDTYPE_REFINE
#define BNDTYPE_REFINE
Definition: libmetis/defs.h:28
i
int i
Definition: BiCGSTAB_step_by_step.cpp:9


gtsam
Author(s):
autogenerated on Sat Nov 16 2024 04:09:48