# file: utils.aus

## class: CommonUtils

[26:21] `static` (extern: com.lehman.aussom.AussomCommonUtils) **extends: object** 

Threading and configuration helpers from
org.jtransforms.utils.CommonUtils. These set or read the
thresholds at which JTransforms switches between single and
multi-threaded paths, plus a few small power-of-two utilities.

#### Methods

- **getThreadsBeginN\_1D\_FFT\_2Threads** ()

	> Returns the threshold at which 1D FFTs switch to two threads.

	- **@r** `A` long with the threshold.


- **setThreadsBeginN\_1D\_FFT\_2Threads** (`int N`)

	> Sets the threshold at which 1D FFTs switch to two threads.

	- **@p** `N` is the new threshold.


- **getThreadsBeginN\_1D\_FFT\_4Threads** ()

	> Returns the threshold at which 1D FFTs switch to four threads.

	- **@r** `A` long with the threshold.


- **setThreadsBeginN\_1D\_FFT\_4Threads** (`int N`)

	> Sets the threshold at which 1D FFTs switch to four threads.

	- **@p** `N` is the new threshold.


- **getThreadsBeginN\_2D** ()

	> Returns the 2D transform multi-thread threshold.

	- **@r** `A` long with the threshold.


- **setThreadsBeginN\_2D** (`int N`)

	> Sets the 2D transform multi-thread threshold.

	- **@p** `N` is the new threshold.


- **getThreadsBeginN\_3D** ()

	> Returns the 3D transform multi-thread threshold.

	- **@r** `A` long with the threshold.


- **setThreadsBeginN\_3D** (`int N`)

	> Sets the 3D transform multi-thread threshold.

	- **@p** `N` is the new threshold.


- **resetThreadsBeginN\_FFT** ()

	> Resets all FFT thread thresholds to their defaults.



- **resetThreadsBeginN** ()

	> Resets all transform thread thresholds to their defaults.



- **isUseLargeArrays** ()

	> Returns whether JTransforms uses LargeArrays for storage.

	- **@r** `A` bool indicating LargeArrays usage.


- **setUseLargeArrays** (`bool On`)

	> Sets whether JTransforms uses LargeArrays for storage.

	- **@p** `On` is a bool to enable or disable LargeArray storage.


- **nextPow2** (`int X`)

	> Returns the next power of two greater than or equal to X.

	- **@p** `X` is an int.
	- **@r** `The` next int power of two.


- **nextPow2Long** (`int X`)

	> Returns the next power of two greater than or equal to X for long values.

	- **@p** `X` is a long.
	- **@r** `The` next long power of two.


- **prevPow2** (`int X`)

	> Returns the previous power of two less than or equal to X.

	- **@p** `X` is an int.
	- **@r** `The` previous int power of two.


- **prevPow2Long** (`int X`)

	> Returns the previous power of two less than or equal to X for long values.

	- **@p** `X` is a long.
	- **@r** `The` previous long power of two.


- **isPowerOf2** (`int X`)

	> Returns true when X is a power of two.

	- **@p** `X` is an int.
	- **@r** `A` bool with true when X is a power of two.


- **isPowerOf2Long** (`int X`)

	> Returns true when X is a power of two for long values.

	- **@p** `X` is a long.
	- **@r** `A` bool with true when X is a power of two.


- **getReminder** (`int N, list Factors`)

	> Computes the largest factor remainder of N divided by the supplied factors.

	- **@p** `N` is the long value.
	- **@p** `Factors` is a list of int factors.
	- **@r** `A` long with the remainder.


- **sleep** (`int Millis`)

	> Sleeps for the given number of milliseconds.

	- **@p** `Millis` is a long with the sleep duration.




## class: IOUtils

[168:21] `static` (extern: com.lehman.aussom.AussomIOUtils) **extends: object** 

Static helpers from org.jtransforms.utils.IOUtils. Provides
RMSE computation, random matrix fillers, pretty printers, and
file writers for JTransforms data. Each JTransforms IOUtils
overload becomes its own Aussom method with a descriptive
suffix so the surface is unambiguous.
Naming convention: the suffix `D` denotes double precision,
`F` denotes float precision, `Large` denotes a LargeArray, and
`Jagged` denotes a nested-list shape.

#### Methods

- **computeRmseDouble** (`double A, double B`)

	> Computes the RMSE between two doubles. Returns the absolute difference for scalar inputs.

	- **@p** `A` is a double.
	- **@p** `B` is a double.
	- **@r** `A` double with the RMSE.


- **computeRmseFloat** (`double A, double B`)

	> Computes the RMSE between two single precision floats.

	- **@p** `A` is a float represented as a number.
	- **@p** `B` is a float represented as a number.
	- **@r** `A` double with the RMSE.


- **computeRmseListD** (`list A, list B`)

	> Computes the RMSE between two double-precision lists.

	- **@p** `A` is a list of numbers.
	- **@p** `B` is a list of numbers.
	- **@r** `A` double with the RMSE.


- **computeRmseListF** (`list A, list B`)

	> Computes the RMSE between two float-precision lists.

	- **@p** `A` is a list of numbers.
	- **@p** `B` is a list of numbers.
	- **@r** `A` double with the RMSE.


- **computeRmseLargeD** (`object A, object B`)

	> Computes the RMSE between two DoubleLargeArrays.

	- **@p** `A` is a DoubleLargeArray.
	- **@p** `B` is a DoubleLargeArray.
	- **@r** `A` double with the RMSE.


- **computeRmseLargeF** (`object A, object B`)

	> Computes the RMSE between two FloatLargeArrays.

	- **@p** `A` is a FloatLargeArray.
	- **@p** `B` is a FloatLargeArray.
	- **@r** `A` double with the RMSE.


- **computeRmse2DListD** (`list A, list B`)

	> Computes the RMSE between two 2D double lists.

	- **@p** `A` is a 2D list of numbers.
	- **@p** `B` is a 2D list of numbers.
	- **@r** `A` double with the RMSE.


- **computeRmse2DListF** (`list A, list B`)

	> Computes the RMSE between two 2D float lists.

	- **@p** `A` is a 2D list of numbers.
	- **@p** `B` is a 2D list of numbers.
	- **@r** `A` double with the RMSE.


- **computeRmse3DListD** (`list A, list B`)

	> Computes the RMSE between two 3D double lists.

	- **@p** `A` is a 3D list of numbers.
	- **@p** `B` is a 3D list of numbers.
	- **@r** `A` double with the RMSE.


- **computeRmse3DListF** (`list A, list B`)

	> Computes the RMSE between two 3D float lists.

	- **@p** `A` is a 3D list of numbers.
	- **@p** `B` is a 3D list of numbers.
	- **@r** `A` double with the RMSE.


- **fillMatrix1DD** (`int N`)

	> Generates a 1D double list filled with random numbers.

	- **@p** `N` is the long length of the matrix.
	- **@r** `A` list of doubles.


- **fillMatrix1DF** (`int N`)

	> Generates a 1D float list filled with random numbers.

	- **@p** `N` is the long length of the matrix.
	- **@r** `A` list of doubles.


- **fillMatrix1DLargeD** (`int N`)

	> Generates a DoubleLargeArray filled with random numbers.

	- **@p** `N` is the long length of the array.
	- **@r** `A` DoubleLargeArray.


- **fillMatrix1DLargeF** (`int N`)

	> Generates a FloatLargeArray filled with random numbers.

	- **@p** `N` is the long length of the array.
	- **@r** `A` FloatLargeArray.


- **fillMatrix2DD** (`int N1, int N2`)

	> Generates a 2D-flat double list filled with random numbers.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@r** `A` list of doubles of length N1*N2.


- **fillMatrix2DF** (`int N1, int N2`)

	> Generates a 2D-flat float list filled with random numbers.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@r** `A` list of doubles of length N1*N2.


- **fillMatrix2DLargeD** (`int N1, int N2`)

	> Generates a flat DoubleLargeArray filled with random numbers for a 2D matrix.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@r** `A` DoubleLargeArray of length N1*N2.


- **fillMatrix2DLargeF** (`int N1, int N2`)

	> Generates a flat FloatLargeArray filled with random numbers for a 2D matrix.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@r** `A` FloatLargeArray of length N1*N2.


- **fillMatrix2DJaggedD** (`int N1, int N2`)

	> Generates a nested 2D double list filled with random numbers.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@r** `A` 2D list of doubles.


- **fillMatrix2DJaggedF** (`int N1, int N2`)

	> Generates a nested 2D float list filled with random numbers.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@r** `A` 2D list of doubles.


- **fillMatrix3DD** (`int N1, int N2, int N3`)

	> Generates a 3D-flat double list filled with random numbers.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@r** `A` list of doubles of length N1*N2*N3.


- **fillMatrix3DF** (`int N1, int N2, int N3`)

	> Generates a 3D-flat float list filled with random numbers.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@r** `A` list of doubles of length N1*N2*N3.


- **fillMatrix3DLargeD** (`int N1, int N2, int N3`)

	> Generates a flat DoubleLargeArray filled with random numbers for a 3D matrix.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@r** `A` DoubleLargeArray of length N1*N2*N3.


- **fillMatrix3DLargeF** (`int N1, int N2, int N3`)

	> Generates a flat FloatLargeArray filled with random numbers for a 3D matrix.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@r** `A` FloatLargeArray of length N1*N2*N3.


- **fillMatrix3DJaggedD** (`int N1, int N2, int N3`)

	> Generates a nested 3D double list filled with random numbers.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@r** `A` 3D list of doubles.


- **fillMatrix3DJaggedF** (`int N1, int N2, int N3`)

	> Generates a nested 3D float list filled with random numbers.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@r** `A` 3D list of doubles.


- **showComplex1D** (`list A, string Title`)

	> Returns a string-formatted view of a 1D complex array.

	- **@p** `A` is a list of doubles in interleaved real/imaginary order.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showComplex2D** (`int Rows, int Columns, list A, string Title`)

	> Returns a string-formatted view of a 2D complex matrix stored row-major in a flat list.

	- **@p** `Rows` is the row count.
	- **@p** `Columns` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showComplex2DJagged** (`list A, string Title`)

	> Returns a string-formatted view of a 2D complex matrix stored as a nested list.

	- **@p** `A` is the 2D nested list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showComplex3D** (`int N1, int N2, int N3, list A, string Title`)

	> Returns a string-formatted view of a 3D complex matrix stored slice-row-major in a flat list.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showComplex3DJagged** (`list A, string Title`)

	> Returns a string-formatted view of a 3D complex matrix stored as a nested list.

	- **@p** `A` is the 3D nested list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showComplex3DFloat** (`int N1, int N2, int N3, list A, string Title`)

	> Returns a string-formatted view of a 3D complex float matrix stored slice-row-major in a flat list.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showReal1D** (`list A, string Title`)

	> Returns a string-formatted view of a 1D real array.

	- **@p** `A` is the data list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showReal2D** (`int N1, int N2, list A, string Title`)

	> Returns a string-formatted view of a 2D real matrix stored row-major in a flat list.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showReal3D** (`int N1, int N2, int N3, list A, string Title`)

	> Returns a string-formatted view of a 3D real matrix stored slice-row-major in a flat list.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **showReal3DJagged** (`list A, string Title`)

	> Returns a string-formatted view of a 3D real matrix stored as a nested list.

	- **@p** `A` is the 3D nested list.
	- **@p** `Title` is the title string.
	- **@r** `A` formatted string.


- **writeToFileComplex1D** (`list A, string Path`)

	> Writes a 1D complex double array to a file.

	- **@p** `A` is the data list.
	- **@p** `Path` is the output file path.


- **writeToFileComplex1DFloat** (`list A, string Path`)

	> Writes a 1D complex float array to a file.

	- **@p** `A` is the data list.
	- **@p** `Path` is the output file path.


- **writeToFileComplex2D** (`int N1, int N2, list A, string Path`)

	> Writes a 2D complex double matrix to a file.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Path` is the output file path.


- **writeToFileComplex2DFloat** (`int N1, int N2, list A, string Path`)

	> Writes a 2D complex float matrix to a file.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Path` is the output file path.


- **writeToFileComplex2DJagged** (`list A, string Path`)

	> Writes a 2D complex double matrix stored as a nested list to a file.

	- **@p** `A` is the 2D nested list.
	- **@p** `Path` is the output file path.


- **writeToFileComplex3D** (`int N1, int N2, int N3, list A, string Path`)

	> Writes a 3D complex double matrix to a file.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Path` is the output file path.


- **writeToFileComplex3DJagged** (`list A, string Path`)

	> Writes a 3D complex double matrix stored as a nested list to a file.

	- **@p** `A` is the 3D nested list.
	- **@p** `Path` is the output file path.


- **writeToFileReal1D** (`list A, string Path`)

	> Writes a 1D real double array to a file.

	- **@p** `A` is the data list.
	- **@p** `Path` is the output file path.


- **writeToFileReal1DFloat** (`list A, string Path`)

	> Writes a 1D real float array to a file.

	- **@p** `A` is the data list.
	- **@p** `Path` is the output file path.


- **writeToFileReal2D** (`int N1, int N2, list A, string Path`)

	> Writes a 2D real double matrix to a file.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Path` is the output file path.


- **writeToFileReal2DFloat** (`int N1, int N2, list A, string Path`)

	> Writes a 2D real float matrix to a file.

	- **@p** `N1` is the row count.
	- **@p** `N2` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Path` is the output file path.


- **writeToFileReal3D** (`int N1, int N2, int N3, list A, string Path`)

	> Writes a 3D real double matrix to a file.

	- **@p** `N1` is the slice count.
	- **@p** `N2` is the row count.
	- **@p** `N3` is the column count.
	- **@p** `A` is the flat data list.
	- **@p** `Path` is the output file path.




