Struct Cmplx
Port of pocketfft's cmplx<T0> for the double engine (T0 == double).
The field layout (r then i) is identical to
Complex (real then imaginary), so the two are
bit-reinterpretable at the driver boundary. All operators reproduce
pocketfft's exact real/imag operation order.
public struct Cmplx
- Inherited Members
Constructors
Cmplx(double, double)
public Cmplx(double r_, double i_)
Parameters
Fields
i
public double i
Field Value
r
public double r
Field Value
Methods
SpecialMul(bool, in Cmplx, in Cmplx)
pocketfft special_mul<fwd> (twiddle multiply with direction-dependent
conjugation). fwd: (ro.r+io.i, io.r-ro.i); bwd: (ro.r-io.i, ro.i+io.r).
public static Cmplx SpecialMul(bool fwd, in Cmplx v1, in Cmplx v2)
Parameters
Returns
Operators
operator +(in Cmplx, in Cmplx)
public static Cmplx operator +(in Cmplx a, in Cmplx b)
Parameters
Returns
operator *(in Cmplx, in Cmplx)
public static Cmplx operator *(in Cmplx a, in Cmplx b)
Parameters
Returns
operator *(in Cmplx, double)
public static Cmplx operator *(in Cmplx a, double s)
Parameters
Returns
operator -(in Cmplx, in Cmplx)
public static Cmplx operator -(in Cmplx a, in Cmplx b)