Package de.gsi.math.spectra.wavelet
Class ContinuousWavelet
- java.lang.Object
-
- de.gsi.math.spectra.wavelet.ContinuousWavelet
-
public class ContinuousWavelet extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanDEBUGprotected intSTART_THREADS
-
Constructor Summary
Constructors Constructor Description ContinuousWavelet()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description de.gsi.dataset.DataSetgetScalogram(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)Wavelet Scalogram implementation with truncated convolution the assumption is made that the wavelet vanishes for large scalesdouble[][]getScalogramArray(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)double[][]getScalogramArrayFourier(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)double[]getScalogramFrequencyAxis(int nQuantx, int nQuanty, double nu, double fmin, double fmax)double[]getScalogramTimeAxis(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)intgetStatus()booleanisBusy()static voidmain(java.lang.String[] args)org.apache.commons.math3.complex.ComplexMexicanHat(double x)org.apache.commons.math3.complex.ComplexMorlet(double x, double nu)Complex Morlet wavelet functionvoidMorlet(double x, double nu, double[] ret)Complex Morlet wavelet function this version avoids the Complex object for the sake of performanceorg.apache.commons.math3.complex.ComplexPaul(double x, int m)Complex Paul wavelet functionorg.apache.commons.math3.complex.ComplexWaveletTransform(double[] data, double scale, double translation, double nu)Wavelet Scalogram implementation with truncated convolution the assumption is made that the wavelet vanishes for large scalesorg.apache.commons.math3.complex.ComplexWaveletTransform(org.apache.commons.math3.complex.Complex[] data, double scale, double translation, double nu)Complex Wavelet Scalogram implementation -- no assumptions on the Wavelet nor input data are made.
-
-
-
Method Detail
-
getScalogram
public de.gsi.dataset.DataSet getScalogram(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)Wavelet Scalogram implementation with truncated convolution the assumption is made that the wavelet vanishes for large scales- Parameters:
data- real valued input datanQuantx- number of bins on the time axisnQuanty- number of frequency bins of full rangenu- the number of oscillations per waveletfmin- minimum scalogram frequency rangefmax- maximum scalogram frequency range- Returns:
- the complex scalogram spectrum
-
getScalogramArray
public double[][] getScalogramArray(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)- Parameters:
data- input datanQuantx- number of bins on the time axisnQuanty- number of frequency bins of full rangenu- Morlet wavelet oscillation parameterfmin- minimum scalogram frequency rangefmax- maximum scalogram frequency range- Returns:
- Scalogram power in dB
-
getScalogramArrayFourier
public double[][] getScalogramArrayFourier(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)- Parameters:
data- input datanQuantx- number of bins on the time axisnQuanty- number of frequency bins of full rangenu- Morlet wavelet oscillation parameterfmin- minimum scalogram frequency rangefmax- maximum scalogram frequency range- Returns:
- Scalogram power in dB
-
getScalogramFrequencyAxis
public double[] getScalogramFrequencyAxis(int nQuantx, int nQuanty, double nu, double fmin, double fmax)
-
getScalogramTimeAxis
public double[] getScalogramTimeAxis(double[] data, int nQuantx, int nQuanty, double nu, double fmin, double fmax)
-
getStatus
public int getStatus()
- Returns:
- progress of pending calculations in percent
-
isBusy
public boolean isBusy()
- Returns:
- whether class is busy computing a spectra
-
MexicanHat
public org.apache.commons.math3.complex.Complex MexicanHat(double x)
-
Morlet
public org.apache.commons.math3.complex.Complex Morlet(double x, double nu)Complex Morlet wavelet function- Parameters:
x- thenu- the oscillatory parameter (needs to be > 0.8)- Returns:
- reference: P. Goupillaud, A. Grossman, and J. Morlet., Cycle-Octave and Related Transforms in Seismic Signal Analysis., Geoexploration, 23:85-102, 1984
-
Morlet
public void Morlet(double x, double nu, double[] ret)Complex Morlet wavelet function this version avoids the Complex object for the sake of performance- Parameters:
x- inputnu- the oscillatory parameterret- return value ret[0] stores the real and ret[1] the imaginary value of the function reference: P. Goupillaud, A. Grossman, and J. Morlet., Cycle-Octave and Related Transforms in Seismic Signal Analysis., Geoexploration, 23:85-102, 1984
-
Paul
public org.apache.commons.math3.complex.Complex Paul(double x, int m)Complex Paul wavelet function- Parameters:
x- inputm- input- Returns:
- complex Paul wavelet function
-
WaveletTransform
public org.apache.commons.math3.complex.Complex WaveletTransform(org.apache.commons.math3.complex.Complex[] data, double scale, double translation, double nu)Complex Wavelet Scalogram implementation -- no assumptions on the Wavelet nor input data are made. -- beware: this transform is quite time-consuming- Parameters:
data- complex valued input datascale- the scale parametertranslation- the time shift parameternu- the number of oscillations per wavelet- Returns:
- the complex scalogram spectrum coefficient
-
WaveletTransform
public org.apache.commons.math3.complex.Complex WaveletTransform(double[] data, double scale, double translation, double nu)Wavelet Scalogram implementation with truncated convolution the assumption is made that the wavelet vanishes for large scales- Parameters:
data- real valued input datascale- the scale parametertranslation- the time shift parameternu- the number of oscillations per wavelet- Returns:
- the complex scalogram spectrum coefficient
-
main
public static void main(java.lang.String[] args)
-
-