|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.mines.jtk.dsp.RecursiveCascadeFilter
public class RecursiveCascadeFilter
A recursive filter implemented as a cascade of 2nd-order filters. The output of each 2nd-order recursive filter becomes the input to the next 2nd-order recursive filter in the cascade.
An advantage of recursive cascade filters is that they can be applied in-place; input and output arrays may be the same arrays.
A disadvantage of recursive cascade filters is that a forward-reverse application yields only an approximation to a symmetric zero-phase impulse response. This approximation is worst at array ends where the output of each 2nd-order filter truncated.
| Constructor Summary | |
|---|---|
protected |
RecursiveCascadeFilter()
|
|
RecursiveCascadeFilter(Cdouble[] poles,
Cdouble[] zeros,
double gain)
Constructs a recursive filter with specified poles, zeros, and gain. |
| Method Summary | |
|---|---|
void |
apply1Forward(float[][][] x,
float[][][] y)
Applies this filter along the 1st dimension in the forward direction. |
void |
apply1Forward(float[][] x,
float[][] y)
Applies this filter along the 1st dimension in the forward direction. |
void |
apply1ForwardReverse(float[][][] x,
float[][][] y)
Applies this filter along the 1st dimension in the forward and reverse directions. |
void |
apply1ForwardReverse(float[][] x,
float[][] y)
Applies this filter along the 1st dimension in the forward and reverse directions. |
void |
apply1Reverse(float[][][] x,
float[][][] y)
Applies this filter along the 1st dimension in the reverse direction. |
void |
apply1Reverse(float[][] x,
float[][] y)
Applies this filter along the 1st dimension in the reverse direction. |
void |
apply2Forward(float[][][] x,
float[][][] y)
Applies this filter along the 2nd dimension in the forward direction. |
void |
apply2Forward(float[][] x,
float[][] y)
Applies this filter along the 2nd dimension in the forward direction. |
void |
apply2ForwardReverse(float[][][] x,
float[][][] y)
Applies this filter along the 2nd dimension in the forward and reverse directions. |
void |
apply2ForwardReverse(float[][] x,
float[][] y)
Applies this filter along the 2nd dimension in the forward and reverse directions. |
void |
apply2Reverse(float[][][] x,
float[][][] y)
Applies this filter along the 2nd dimension in the reverse direction. |
void |
apply2Reverse(float[][] x,
float[][] y)
Applies this filter along the 2nd dimension in the reverse direction. |
void |
apply3Forward(float[][][] x,
float[][][] y)
Applies this filter along the 3rd dimension in the forward direction. |
void |
apply3ForwardReverse(float[][][] x,
float[][][] y)
Applies this filter along the 3rd dimension in the forward and reverse directions. |
void |
apply3Reverse(float[][][] x,
float[][][] y)
Applies this filter along the 3rd dimension in the reverse direction. |
void |
applyForward(float[] x,
float[] y)
Applies this filter in the forward direction. |
void |
applyForwardReverse(float[] x,
float[] y)
Applies this filter in the forward and reverse directions. |
void |
applyReverse(float[] x,
float[] y)
Applies this filter in the reverse direction. |
protected void |
init(Cdouble[] poles,
Cdouble[] zeros,
double gain)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public RecursiveCascadeFilter(Cdouble[] poles,
Cdouble[] zeros,
double gain)
poles - array of complex poles.zeros - array of complex poles.gain - the filter gain.protected RecursiveCascadeFilter()
| Method Detail |
|---|
public void applyForward(float[] x,
float[] y)
x - the input array.y - the output array.
public void applyReverse(float[] x,
float[] y)
x - the input array.y - the output array.
public void applyForwardReverse(float[] x,
float[] y)
x - the input array.y - the output array.
public void apply1Forward(float[][] x,
float[][] y)
x - the input array.y - the output array.
public void apply1Reverse(float[][] x,
float[][] y)
x - the input array.y - the output array.
public void apply1ForwardReverse(float[][] x,
float[][] y)
x - the input array.y - the output array.
public void apply2Forward(float[][] x,
float[][] y)
x - the input array.y - the output array.
public void apply2Reverse(float[][] x,
float[][] y)
x - the input array.y - the output array.
public void apply2ForwardReverse(float[][] x,
float[][] y)
x - the input array.y - the output array.
public void apply1Forward(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply1Reverse(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply1ForwardReverse(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply2Forward(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply2Reverse(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply2ForwardReverse(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply3Forward(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply3Reverse(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
public void apply3ForwardReverse(float[][][] x,
float[][][] y)
x - the input array.y - the output array.
protected void init(Cdouble[] poles,
Cdouble[] zeros,
double gain)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||