|
Medusa
1.1
Coordinate Free Mehless Method implementation
|
|
Go to the documentation of this file. 1 #ifndef MEDUSA_BITS_DOMAINS_BASICRELAX_FWD_HPP_
2 #define MEDUSA_BITS_DOMAINS_BASICRELAX_FWD_HPP_
126 template<
class domain_t>
128 typedef typename domain_t::vector_t vec_t;
129 operator()(domain, [](
const vec_t& ) {
return -1.0; });
137 template<
class domain_t>
139 typedef typename domain_t::vector_t vec_t;
140 operator()(domain, [r](
const vec_t& ) {
return r; });
144 template<
class domain_t,
class radius_func_type>
145 void operator()(domain_t& domain,
const radius_func_type& r_func)
const;
150 #endif // MEDUSA_BITS_DOMAINS_BASICRELAX_FWD_HPP_
Range< int > nodes_
List of nodes to process.
Root namespace for the whole library.
ProjectionType projection_type
On boundary projection method.
BasicRelax & initialHeat(double in)
Sets initial heat.
BasicRelax & boundaryProjectionThreshold(double in)
Sets threshold for adding nodes on boundary, i.e. if node and are distances to closest boundary nod...
BasicRelax & finalHeat(double in)
Sets final heat.
@ DO_NOT_PROJECT
Escaped nodes are frozen outside the domain till the end of relax and then removed.
BasicRelax & rebuildTreeAfter(int iterations)
Sets rebuild tree frequency.
@ PROJECT_IN_DIRECTION
Project on boundary in relax movement direction.
void operator()(domain_t &domain) const
Runs the relax on the selected domain with constant distribution equals to domain characteristic dist...
BasicRelax & potentialOrder(int order)
Sets order of repulsing potential.
BasicRelax & onlyNodes(Range< int > nodes)
Move only given nodes.
double boundary_projection_threshold
Threshold for projecting nodes on boundary.
ProjectionType
Indicating type of projection used when a relax node goes out of the domain.
void operator()(domain_t &domain, double r) const
Runs the relax on the selected domain with constant density.
int num_neighbours
Number of nodes to consider when calculating the potential.
BasicRelax & iterations(int iterations)
Sets number of iterations.
double final_heat
Heat at the end of the relax, usually around 0.
double initial_heat
Initial heat, usually between 0 and 5.
int num_iterations
Number of iterations performed.
BasicRelax & projectionType(ProjectionType in)
Determines how to handle nodes that escape during relaxation.
int rebuild_tree_after
How often engine rebuild search tree, 1 is perfect but slow.
int potential_order
Order of repulsing potential.
@ PROJECT_BETWEEN_CLOSEST
Project between two closest boundary nodes – this one might result in divergent behaviour,...
BasicRelax & numNeighbours(int neighbours)
Sets num neighbours.
Redistributes nodes towards more uniform distribution by minimizing potential between nodes.