Purpose

The module HistogramSphereLinearFunction computes a histogram (i.e. and approximation of a PDF) of a piecewise multi-linear function.

The function yields values that are supposed to lie on the sphere S2. Since S2 is contained in the three-dimensional space, this function is represented as an array of three scalar-valued functions. The values do not have to exactly lie on the sphere (which is very unlikely anyway). Instead, they are internally projected onto the sphere.

In more detail, the module works as follows: The sphere is partitioned into two half-spheres, each of which is partitioned into a number of latitudes (given by the Number of Latitudes field, and each latitude is partitioned into a number of sectors (determined automatically such that they have approximately squared shape). The function is evaluated at a number of points (depending on the Histogram Accuracy field), and each value is projected onto the sphere. For each sphere sector, the number of points whose values lie inside this sector is counted. This number is then divided by the number of evaluation points and the respective sector size. The result is the histogram. To display this histogram as an ML image, the center of each voxel is projected onto the sphere, and the voxel then gets the gray value of the sector its projected center lies in.

Windows

Default Panel

../../../Modules/ML/MLStochasticCollocation/mhelp/Images/Screenshots/HistogramSphereLinearFunction._default.png

Input Fields

inputFunctions

name: inputFunctions, type: MLBase

Output Fields

output0

name: output0, type: Image

Parameter Fields

Visible Fields

Bounding Box Function 1

name: autoBBox1, type: String, persistent: no

Shows the generic bounding box of the first function.

The same value can also be obtained with an EvaluateInterpolationPolynomial module.

Bounding Box Function 2

name: autoBBox2, type: String, persistent: no

Shows the generic bounding box of the second function.

The same value can also be obtained with an EvaluateInterpolationPolynomial module.

Bounding Box Function 3

name: autoBBox3, type: String, persistent: no

Shows the generic bounding box of the third function.

The same value can also be obtained with an EvaluateInterpolationPolynomial module.

Bounding Box Selection

name: bBoxSelection, type: Enum, default: Union

Defines the pre-image bounding box mode.

Values:

Title Name
Manual Manual
Function 1 Function 1
Function 2 Function 2
Function 3 Function 3
Union Union

Manual Bounding Box

name: manBBox, type: String

Sets the manual pre-image bounding box.

Histogram Accuracy

name: accuracy, type: Integer, default: 20, minimum: 2

Sets the number of points per space dimension in which the bounding box is scanned.

The higher the number, the better is the approximation of the histogram, but the slower is the computation.

Sphere Radius

name: sphereRadius, type: Double, default: 1

Sets the radius of the sphere along which you want to display your histogram.

Actually, this parameter only influences the world matrix of the image and the image scaling, nothing else. If you are confused, just leave the default, which is 1.

Number of Voxels

name: numVoxels, type: Integer, default: 20

Sets the number of voxels of the output ML image per space dimension.

The higher the number, the better the resolution. However, setting this to a high value and Histogram Accuracy to a low value will result it a very bad result (just try it and you will see).

Number of Latitudes

name: numLatitudes, type: Integer, default: 20

Sets the number of latitudes the sphere is partitioned into.

The higher the number, the better the resolution. However, setting this to a high value and Histogram Accuracy to a low value will result it a very bad result (just try it and you will see).