Class DoubleDCT_1D


  • public class DoubleDCT_1D
    extends java.lang.Object
    Computes 1D Discrete Cosine Transform (DCT) of double precision data. The size of data can be an arbitrary number. This is a parallel implementation of split-radix and mixed-radix algorithms optimized for SMP systems.

    Part of the code is derived from General Purpose FFT Package written by Takuya Ooura (http://www.kurims.kyoto-u.ac.jp/~ooura/fft.html)
    Author:
    Piotr Wendykier (piotr.wendykier@gmail.com)
    • Constructor Summary

      Constructors 
      Constructor Description
      DoubleDCT_1D​(int n)
      Creates new instance of DoubleDCT_1D.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void forward​(double[] a, boolean scale)
      Computes 1D forward DCT (DCT-II) leaving the result in a.
      void forward​(double[] a, int offa, boolean scale)
      Computes 1D forward DCT (DCT-II) leaving the result in a.
      void inverse​(double[] a, boolean scale)
      Computes 1D inverse DCT (DCT-III) leaving the result in a.
      void inverse​(double[] a, int offa, boolean scale)
      Computes 1D inverse DCT (DCT-III) leaving the result in a.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DoubleDCT_1D

        public DoubleDCT_1D​(int n)
        Creates new instance of DoubleDCT_1D.
        Parameters:
        n - size of data
    • Method Detail

      • forward

        public void forward​(double[] a,
                            boolean scale)
        Computes 1D forward DCT (DCT-II) leaving the result in a.
        Parameters:
        a - data to transform
        scale - if true then scaling is performed
      • forward

        public void forward​(double[] a,
                            int offa,
                            boolean scale)
        Computes 1D forward DCT (DCT-II) leaving the result in a.
        Parameters:
        a - data to transform
        offa - index of the first element in array a
        scale - if true then scaling is performed
      • inverse

        public void inverse​(double[] a,
                            boolean scale)
        Computes 1D inverse DCT (DCT-III) leaving the result in a.
        Parameters:
        a - data to transform
        scale - if true then scaling is performed
      • inverse

        public void inverse​(double[] a,
                            int offa,
                            boolean scale)
        Computes 1D inverse DCT (DCT-III) leaving the result in a.
        Parameters:
        a - data to transform
        offa - index of the first element in array a
        scale - if true then scaling is performed