コード例 #1
0
ファイル: Managed.cs プロジェクト: constructor-igor/cudafy
 /// <summary>
 /// Creates plan..
 /// </summary>
 /// <param name="fftType">Type of fft.</param>
 /// <param name="n">The n.</param>
 /// <param name="input">The input.</param>
 /// <param name="output">The output.</param>
 /// <param name="direction">The direction.</param>
 /// <param name="flags">The flags.</param>
 /// <returns></returns>
 public static fftwf_plan dft_1d(eFFTType fftType, int n, IntPtr input, IntPtr output, fftw_direction direction, fftw_flags flags)
 {
     fftwf_plan p = new fftwf_plan();
     if (fftType == eFFTType.Complex2Complex)
         p._handle = fftwf.dft_1d(n, input, output, direction, flags);
     else if (fftType == eFFTType.Real2Complex)
         p._handle = fftwf.dft_r2c_1d(n, input, output, flags);
     else if (fftType == eFFTType.Complex2Real)
         p._handle = fftwf.dft_c2r_1d(n, input, output, flags);
     p.Input = input;
     p.Output = output;
     return p;
 }
コード例 #2
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
 public static extern IntPtr r2r_1d(int n, IntPtr input, IntPtr output, fftw_kind kind, fftw_flags flags);
コード例 #3
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
 public static extern IntPtr dft_r2c_3d(int nx, int ny, int nz, IntPtr input, IntPtr output, fftw_flags flags);
コード例 #4
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
 public static extern IntPtr dft_r2c(int rank, int[] n, IntPtr input, IntPtr output, fftw_flags flags);
コード例 #5
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
        public static extern IntPtr dft_3d(int nx, int ny, int nz, IntPtr input, IntPtr output, 
			fftw_direction direction, fftw_flags flags);
コード例 #6
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
        public static extern IntPtr dft(int rank, int[] n, IntPtr input, IntPtr output, 
			fftw_direction direction, fftw_flags flags);
コード例 #7
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 //Real<->Real
 public static fftw_plan r2r_1d(int n, fftw_complexarray input, fftw_complexarray output, fftw_kind kind, fftw_flags flags)
 {
     fftw_plan p = new fftw_plan();
     p.handle = fftw.r2r_1d(n, input.Handle, output.Handle, kind, flags);
     return p;
 }
コード例 #8
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 public static fftw_plan dft_r2c_3d(int nx, int ny, int nz, fftw_complexarray input, fftw_complexarray output, fftw_flags flags)
 {
     fftw_plan p = new fftw_plan();
     p.handle = fftw.dft_r2c_3d(nx, ny, nz, input.Handle, output.Handle, flags);
     return p;
 }
コード例 #9
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        public static fftwf_plan dft_r2c(int rank, int[] n, fftwf_complexarray input, fftwf_complexarray output, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftwf_plan p = new fftwf_plan();
            p.handle = fftwf.dft_r2c(rank, n, input.Handle, output.Handle, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #10
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        public static fftwf_plan dft_3d(int nx, int ny, int nz, fftwf_complexarray input, fftwf_complexarray output, fftw_direction direction, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftwf_plan p = new fftwf_plan();
            p.handle = fftwf.dft_3d(nx, ny, nz, input.Handle, output.Handle, direction, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #11
0
ファイル: Interop.cs プロジェクト: JustasB/cudafy
 public static extern IntPtr many_dft_c2r(int rank, int[] n, int howmany,
                           IntPtr input, int[] inembed,
                           int istride, int idist,
                           IntPtr output, int[] onembed,
                           int ostride, int odist, fftw_flags flags);
コード例 #12
0
		public static fftw_plan dft_2d(int nx, int ny, fftw_complexarray input, fftw_complexarray output, fftw_direction direction, fftw_flags flags)
		{
            FFTW_Semaphore.WaitOne();
            fftw_plan p = new fftw_plan();
			p.handle = fftw.dft_2d(nx, ny, input.Handle, output.Handle, direction,flags);
            FFTW_Semaphore.Release();
            return p;
		}
コード例 #13
0
ファイル: Managed.cs プロジェクト: constructor-igor/cudafy
 public static fftwf_plan dft_many(eFFTType fftType, int rank, int[] n, int batch,
                           IntPtr input, int[] inembed,
                           int istride, int idist,
                           IntPtr output, int[] onembed,
                           int ostride, int odist,
                           fftw_direction sign, fftw_flags flags)
 {
     fftwf_plan p = new fftwf_plan();
     if (fftType == eFFTType.Complex2Complex)
         p._handle = fftwf.many_dft(rank, n, batch, input, inembed, istride, idist, output, onembed, ostride, odist, sign, flags);
     else if (fftType == eFFTType.Real2Complex)
         p._handle = fftwf.many_dft_r2c(rank, n, batch, input, inembed, istride, idist, output, onembed, ostride, odist, flags);
     else if (fftType == eFFTType.Complex2Real)
         p._handle = fftwf.many_dft_c2r(rank, n, batch, input, inembed, istride, idist, output, onembed, ostride, odist, flags);
     p.Input = input;
     p.Output = output;
     return p;
 }
コード例 #14
0
 public static fftwf_plan dft_c2r_3d(int nx, int ny, int nz, fftwf_complexarray input, fftwf_complexarray output, fftw_direction direction, fftw_flags flags)
 {
     fftwf_plan p = new fftwf_plan();
     p.handle = fftwf.dft_c2r_3d(nx, ny, nz, input.Handle, output.Handle, (uint)flags);
     return p;
 }
コード例 #15
0
ファイル: Interop.cs プロジェクト: g3gg0/rx-fft
 public static extern IntPtr dft_3d(int nx, int ny, int nz, IntPtr input, IntPtr output,
                                    fftw_direction direction, fftw_flags flags);
コード例 #16
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        //Real<->Real
        public static fftwf_plan r2r_1d(int n, fftwf_complexarray input, fftwf_complexarray output, fftw_kind kind, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftwf_plan p = new fftwf_plan();
            p.handle = fftwf.r2r_1d(n, input.Handle, output.Handle, kind, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #17
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 public static fftw_plan dft_r2c(int rank, int[] n, fftw_complexarray input, fftw_complexarray output, fftw_flags flags)
 {
     fftw_plan p = new fftw_plan();
     p.handle = fftw.dft_r2c(rank, n, input.Handle, output.Handle, flags);
     return p;
 }
コード例 #18
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        //Complex->Real
        public static fftw_plan dft_c2r_1d(int n, fftw_complexarray input, fftw_complexarray output, fftw_direction direction, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftw_plan p = new fftw_plan();
            p.handle = fftw.dft_c2r_1d(n, input.Handle, output.Handle, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #19
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 public static fftw_plan r2r(int rank, int[] n, fftw_complexarray input, fftw_complexarray output,
     fftw_kind[] kind, fftw_flags flags)
 {
     fftw_plan p = new fftw_plan();
     p.handle = fftw.r2r(rank, n, input.Handle, output.Handle,
         kind, flags);
     return p;
 }
コード例 #20
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        public static fftw_plan dft_r2c_2d(int nx, int ny, fftw_complexarray input, fftw_complexarray output, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftw_plan p = new fftw_plan();
            p.handle = fftw.dft_r2c_2d(nx, ny, input.Handle, output.Handle, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #21
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
        public static fftw_plan r2r_3d(int nx, int ny, int nz, fftw_complexarray input, fftw_complexarray output, 
			fftw_kind kindx, fftw_kind kindy, fftw_kind kindz, fftw_flags flags)
        {
            fftw_plan p = new fftw_plan();
            p.handle = fftw.r2r_3d(nx, ny, nz, input.Handle, output.Handle,
                kindx, kindy, kindz, flags);
            return p;
        }
コード例 #22
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        public static fftw_plan r2r(int rank, int[] n, fftw_complexarray input, fftw_complexarray output,
            fftw_kind[] kind, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftw_plan p = new fftw_plan();
            p.handle = fftw.r2r(rank, n, input.Handle, output.Handle,
                kind, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #23
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
        public static extern IntPtr dft_1d(int n, IntPtr input, IntPtr output, 
			fftw_direction direction, fftw_flags flags);
コード例 #24
0
ファイル: Managed.cs プロジェクト: aemerman/Nevis14
        public static fftw_plan r2r_3d(int nx, int ny, int nz, fftw_complexarray input, fftw_complexarray output,
            fftw_kind kindx, fftw_kind kindy, fftw_kind kindz, fftw_flags flags)
        {
            FFTW_Lock.WaitOne();
            fftw_plan p = new fftw_plan();
            p.handle = fftw.r2r_3d(nx, ny, nz, input.Handle, output.Handle,
                kindx, kindy, kindz, flags);
            FFTW_Lock.ReleaseMutex();

            return p;
        }
コード例 #25
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
 public static extern IntPtr dft_c2r_2d(int nx, int ny, IntPtr input, IntPtr output, fftw_flags flags);
コード例 #26
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 public static fftwf_plan dft_c2r(int rank, int[] n, fftwf_complexarray input, fftwf_complexarray output, fftw_direction direction, fftw_flags flags)
 {
     fftwf_plan p = new fftwf_plan();
     p.handle = fftwf.dft_c2r(rank, n, input.Handle, output.Handle, flags);
     return p;
 }
コード例 #27
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
 public static extern IntPtr dft_r2c_1d(int n, IntPtr input, IntPtr output, fftw_flags flags);
コード例 #28
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 //Real->Complex transforms
 public static fftwf_plan dft_r2c_1d(int n, fftwf_complexarray input, fftwf_complexarray output, fftw_flags flags)
 {
     fftwf_plan p = new fftwf_plan();
     p.handle = fftwf.dft_r2c_1d(n, input.Handle, output.Handle, flags);
     return p;
 }
コード例 #29
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
        public static extern IntPtr r2r(int rank, int[] n, IntPtr input, IntPtr output, 
			fftw_kind[] kind, fftw_flags flags);
コード例 #30
0
ファイル: Managed.cs プロジェクト: nobnak/FftOceanUnity
 public static fftw_plan dft_c2r_2d(int nx, int ny, fftw_complexarray input, fftw_complexarray output, fftw_direction direction, fftw_flags flags)
 {
     fftw_plan p = new fftw_plan();
     p.handle = fftw.dft_c2r_2d(nx, ny, input.Handle, output.Handle, flags);
     return p;
 }
コード例 #31
0
ファイル: Interop.cs プロジェクト: nobnak/FftOceanUnity
        public static extern IntPtr r2r_3d(int nx, int ny, int nz, IntPtr input, IntPtr output, 
			fftw_kind kindx, fftw_kind kindy, fftw_kind kindz, fftw_flags flags);
コード例 #32
0
ファイル: Interop.cs プロジェクト: g3gg0/rx-fft
 public static extern IntPtr dft_1d(int n, IntPtr input, IntPtr output,
                                    fftw_direction direction, fftw_flags flags);