This class is developed for exceptions that might occure, when nodes are placed at the same position and a new random position has to be found, or when the calculated forces are near the machine accuracy, where no reasonable numeric and logic calculations are possible any more.
More...
#include <ogdf/energybased/fmmm/numexcept.h>
|
static DPoint | choose_distinct_random_point_in_disque (DPoint old_point, double xmin, double xmax, double ymin, double ymax) |
| Returns a distinct random point within the smallest disque D with center old_point that is contained in the box defined by xmin,...,ymax; The size of D is shrunk by multiplying with epsilon = 0.1; Precondition: old_point is contained in the box and the box is not equal to old_point.
|
|
static bool | f_near_machine_precision (double distance, DPoint &force) |
| If distance has a value near the machine precision the (attractive)force calculation is not possible (calculated values exceed the machine accuracy) in this cases true is returned and force is set to a reasonable value that does not cause problems; Else false is returned and force keeps unchanged.
|
|
static DPoint | f_rep_u_on_v (DPoint pos_u, DPoint pos_v) |
|
static bool | nearly_equal (double a, double b) |
| Returns true if a is "nearly" equal to b (needed, when machine accuracy is insufficient in functions well_seperated and bordering of NMM)
|
|
This class is developed for exceptions that might occure, when nodes are placed at the same position and a new random position has to be found, or when the calculated forces are near the machine accuracy, where no reasonable numeric and logic calculations are possible any more.
Definition at line 44 of file numexcept.h.
◆ choose_distinct_random_point_in_disque()
Returns a distinct random point within the smallest disque D with center old_point that is contained in the box defined by xmin,...,ymax; The size of D is shrunk by multiplying with epsilon = 0.1; Precondition: old_point is contained in the box and the box is not equal to old_point.
◆ choose_distinct_random_point_in_radius_epsilon()
static DPoint ogdf::energybased::fmmm::numexcept::choose_distinct_random_point_in_radius_epsilon |
( |
DPoint |
old_pos | ) |
|
|
staticprotected |
A random point (distinct from old_pos) on the disque around old_pos with radius epsilon = 0.1 is computed.
◆ f_near_machine_precision()
If distance has a value near the machine precision the (attractive)force calculation is not possible (calculated values exceed the machine accuracy) in this cases true is returned and force is set to a reasonable value that does not cause problems; Else false is returned and force keeps unchanged.
◆ f_rep_near_machine_precision()
static bool ogdf::energybased::fmmm::numexcept::f_rep_near_machine_precision |
( |
double |
distance, |
|
|
DPoint & |
force |
|
) |
| |
|
staticprotected |
If distance has a value near the machine precision the repulsive force calculation is not possible (calculated values exceed the machine accuracy) in this cases true is returned and force is set to a reasonable value that does not cause problems; Else false is returned and force keeps unchanged.
◆ f_rep_scalar()
Returns the repulsing force_function_value of scalar d.
Definition at line 77 of file numexcept.h.
◆ f_rep_u_on_v()
◆ nearly_equal()
Returns true if a is "nearly" equal to b (needed, when machine accuracy is insufficient in functions well_seperated and bordering of NMM)
The documentation for this class was generated from the following file: