ThresholdLinearFunction¶

MLModule
¶
Purpose¶
The module ThresholdLinearFunction
computes the measure of the subset of points (in the bounding box) on which the value of a piecewise multilinear function is above a given threshold.
More precisely, it computes the measure of the set on which the function is greater than or equal to the threshold.
Multiple thresholds can be specified, resulting in multiple results.
The module internally approximates the function by a piecewise linear (rather than multilinear) function, where the pieces are dsimplices (d being the dimension). The bounding box is covered by 2^{d*l`*d! simplices (l being the level supplied in the :field:`level} field), on each of which the corresponding measure is computed exactly. This usually gives a much better result than just evaluating the function on a uniform grid and counting the values that lie above the threshold.
Parameter Fields¶
Field Index¶
Apply : Trigger 
Auto apply : Bool 
Divide by box size : Bool 
Level : Integer 
Recommended Level : Integer 
Results : String 
Thresholds : String 
Visible Fields¶
Recommended Level¶

name:
recommLevel
, type:
Integer
, persistent:
no
¶ Sets a recommended level value.
The error that the algorithm makes (besides the fact that the function itself is usually only an approximation of the function you actually want to examine) consists of (a) errors due to leaving out some details of the function, (b) errors due to the approximation by a piecewise linear function, and (c) roundoff errors. If you choose the level to be at least the value displayed here, the (a) part of the error is guaranteed to vanish. You should, however, not take this value too seriously.
Level¶

name:
level
, type:
Integer
, default:
1
, minimum:
1
¶ Sets the level value.
The higher this value is chosen, the more precise the result is. The number of points at which the function is evaluated is given by (2^{l} + 1)^{d} , but the algorithm will evaluate some points more than once, and the number of function evaluations is therefore larger and given by (3 * 2^{l1})^{d}.
The level must be at least 1. (You will find the reason for this yourself if you compute the number of function evaluations for l=0.)
Divide by box size¶

name:
divideByBoxSize
, type:
Bool
, default:
TRUE
¶ If checked, the resulting measures are divided by the size of the bounding box, thus scaled to the interval [0,1].
Thresholds¶

name:
thresh
, type:
String
¶ Sets the thresholds (separated by commas) that you want to examine.