jtransforms 1.0.0

Download zip

jtransforms

This is the Aussom-Lang JTransforms module. It wraps JTransforms 3.1 — a pure-Java multi-threaded library by Piotr Wendykier — to give Aussom programs fast numerical transforms on real and complex data.

Four transform families are supported, each available in 1D, 2D, and 3D variants in both double and single precision:

The underlying JTransforms library is BSD 2-Clause licensed and runs on Linux, Windows, and MacOS with no native dependencies.

Usage

Include the transform family you need at the top of your Aussom program. The loader runs once and pulls the JAR onto the classpath:

include jtransforms.fft;

// Forward FFT of a real length-8 signal
fft = new DoubleFFT_1D(8);
data = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0];
out = fft.realForward(data);

// Inverse round-trips when Scale = true
back = fft.realInverse(out, true);

Other domains follow the same pattern: jtransforms.dct, jtransforms.dst, jtransforms.dht, jtransforms.large_array, and jtransforms.utils.

License

Copyright 2026 Austin Lehman

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.