AlphaDQPSettings
All tolerances are relative; absolute ones silently break when the point cloud is rescaled.
Value parameters
- enforceMonotonicity
-
clamp each w(sigma) up to the max over its facets. Mathematically a no-op (see below) but removes ~1e-16 violations that would upset a persistence algorithm.
- equalityTolerance
-
consistency threshold for dependent equality constraints (relative to max|U|).
- feasibilityTolerance
-
a constraint counts as violated when its slack exceeds this fraction of max|U|.
- maxIterationsPerQP
-
iteration cap per QP; 0 means 20n + 200.
- parallel
-
run the per-vertex loop on the common ForkJoinPool. Output is deterministic.
- rankTolerance
-
a candidate constraint is treated as linearly dependent on the working set when its Schur complement drops below this fraction of B_jj. 1e-12 is too tight to be safe: a commit can clear that bar while still leaving a Cholesky pivot many orders of magnitude below the problem's natural scale, which silently poisons the factorisation and manifests later as either non-convergence (degenerate cycling between near-duplicate working sets) or, worse, a garbage-but-finite answer. 1e-8 (the textbook sqrt-of-machine-epsilon rule of thumb) is still not always enough margin in practice -- found a case where the poisoning commit's ratio was 1.03e-8, clearing that bar by a hair. 1e-6 sits in the middle of the empirically-verified safe range [1e-7, 1e-5]: 1e-4 starts rejecting genuinely non-degenerate directions and gives a different (wrong) answer.
- verbose
-
print a diagnostic to stderr each time a candidate is dropped for QP non-convergence (see
solveAtVertex's "defense in depth" comment). Off by default: this is an accepted, recurring limitation of the active-set method on near-degenerate configurations, not an actionable-every-time event, so a caller running many builds (e.g. a property test) would otherwise get stderr spam proportional to trial count rather than a signal worth reading. - workingSetCapacity
-
max active set size; 0 means "ambient dimension + 2", which is a hard bound since the active rows live in R^m. Raise it only if you hit the corresponding exception.
- zeroTolerance
-
threshold on multipliers in the ratio tests.
Attributes
- Experimental
- true
- Graph
-
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass Any