Crate dft [−] [src]
The Transform
trait is responsible for performing the transform. The trait
is implemented for both real and complex data. There are three transform
operations available: forward, backward, and inverse. The desired operation
is specified by the Operation
enumeration passed to the Plan::new
function, which precomputes auxiliary information needed for
Transform::transform
. All the operations are preformed in place.
When applied to real data, the transform works as follows. If the operation
is forward, the data are replaced by the positive frequency half of their
complex transform. The first and last components of the complex transform,
which are real, are stored in self[0]
and self[1]
, respectively. If the
operation is backward or inverse, the data are assumed to be stored
according to the above convention. See the reference below for further
details.
Example
use dft::{Operation, Plan, c64}; let plan = Plan::new(Operation::Forward, 512); let mut data = vec![c64::new(42.0, 69.0); 512]; dft::transform(&mut data, &plan);
References
- W. Press, S. Teukolsky, W. Vetterling, and B. Flannery, “Numerical Recipes 3rd Edition: The Art of Scientific Computing,” Cambridge University Press, 2007.
Structs
Plan |
A transform plan. |
Enums
Operation |
A transform operation. |
Traits
Transform |
The transform. |
Functions
transform |
Perform the transform. |
unpack |
Unpack the result produced by the forward transform applied to real data. |
Type Definitions
c32 |
A complex number with 32-bit parts. |
c64 |
A complex number with 64-bit parts. |