Declaration of FME kernel. More...
#include <ogdf/basic/Math.h>
#include <ogdf/basic/basic.h>
#include <ogdf/energybased/fast_multipole_embedder/ArrayGraph.h>
#include <ogdf/energybased/fast_multipole_embedder/EdgeChain.h>
#include <ogdf/energybased/fast_multipole_embedder/FMEThread.h>
#include <ogdf/energybased/fast_multipole_embedder/FastUtils.h>
#include <algorithm>
#include <cmath>
#include <cstddef>
#include <cstdint>
Go to the source code of this file.
Classes | |
class | ogdf::fast_multipole_embedder::FMEBasicKernel |
class | ogdf::fast_multipole_embedder::FMEKernel |
class | ogdf::fast_multipole_embedder::FMESingleKernel |
Namespaces | |
ogdf | |
The namespace for all OGDF objects. | |
ogdf::fast_multipole_embedder | |
Macros | |
#define | OGDF_FME_KERNEL_COMPUTE_FORCE(dx, dy, s) (s / (max<float>(s * OGDF_FME_KERNEL_COMPUTE_FORCE_PROTECTION_FACTOR, (dx) * (dx) + (dy) * (dy)))) |
#define | OGDF_FME_KERNEL_COMPUTE_FORCE_PROTECTION_FACTOR 0.25f |
#define | OGDF_FME_KERNEL_MM_COMPUTE_FORCE(dx, dy, s) |
#define | OGDF_FME_KERNEL_USE_OLD |
Functions | |
void | ogdf::fast_multipole_embedder::eval_direct (float *x, float *y, float *s, float *fx, float *fy, size_t n) |
kernel function to evaluate forces between n points with coords x, y directly. result is stored in fx, fy More... | |
void | ogdf::fast_multipole_embedder::eval_direct (float *x1, float *y1, float *s1, float *fx1, float *fy1, size_t n1, float *x2, float *y2, float *s2, float *fx2, float *fy2, size_t n2) |
kernel function to evaluate forces between two sets of points with coords x1, y1 (x2, y2) directly. result is stored in fx1, fy1 (fx2, fy2 More... | |
void | ogdf::fast_multipole_embedder::eval_direct_fast (float *x, float *y, float *s, float *fx, float *fy, size_t n) |
kernel function to evaluate forces between n points with coords x, y directly. result is stored in fx, fy More... | |
void | ogdf::fast_multipole_embedder::eval_direct_fast (float *x1, float *y1, float *s1, float *fx1, float *fy1, size_t n1, float *x2, float *y2, float *s2, float *fx2, float *fy2, size_t n2) |
kernel function to evaluate forces between two sets of points with coords x1, y1 (x2, y2) directly. result is stored in fx1, fy1 (fx2, fy2 More... | |
void | ogdf::fast_multipole_embedder::eval_edges (const ArrayGraph &graph, const uint32_t begin, const uint32_t end, float *fx, float *fy) |
void | ogdf::fast_multipole_embedder::fast_multipole_l2p (double *localCoeffiecients, uint32_t numCoeffiecients, double centerX, double centerY, float x, float y, float q, float &fx, float &fy) |
kernel function to evalute a local expansion at point x,y result is added to fx, fy More... | |
void | ogdf::fast_multipole_embedder::fast_multipole_p2m (double *mulitCoeffiecients, uint32_t numCoeffiecients, double centerX, double centerY, float x, float y, float q) |
double | ogdf::fast_multipole_embedder::move_nodes (float *x, float *y, const uint32_t begin, const uint32_t end, const float *fx, const float *fy, const float t) |
Declaration of FME kernel.
Definition in file FMEKernel.h.
#define OGDF_FME_KERNEL_COMPUTE_FORCE | ( | dx, | |
dy, | |||
s | |||
) | (s / (max<float>(s * OGDF_FME_KERNEL_COMPUTE_FORCE_PROTECTION_FACTOR, (dx) * (dx) + (dy) * (dy)))) |
Definition at line 79 of file FMEKernel.h.
#define OGDF_FME_KERNEL_COMPUTE_FORCE_PROTECTION_FACTOR 0.25f |
Definition at line 73 of file FMEKernel.h.
#define OGDF_FME_KERNEL_MM_COMPUTE_FORCE | ( | dx, | |
dy, | |||
s | |||
) |
Definition at line 75 of file FMEKernel.h.
#define OGDF_FME_KERNEL_USE_OLD |
Definition at line 71 of file FMEKernel.h.