@@ -203,7 +203,7 @@ function plan_fft!(X::oneAPI.oneArray{T,N}, region) where {T<:Union{ComplexF32,C
203203 R = length (region); reg = NTuple {R,Int} (region)
204204 # For now, only support full transforms (all dimensions)
205205 if reg != ntuple (identity, N)
206- error ( " Partial dimension FFT not yet supported. Region $reg must be $(ntuple (identity, N)) " )
206+ @info " Partial dimension FFT not yet supported. Region $reg must be $(ntuple (identity, N)) "
207207 end
208208 desc,q = _create_descriptor (size (X),T,true )
209209 ccall_set_cfg (desc, Int32 (DFT_PARAM_PLACEMENT), Int32 (DFT_CFG_INPLACE))
@@ -222,7 +222,7 @@ function plan_bfft!(X::oneAPI.oneArray{T,N}, region) where {T<:Union{ComplexF32,
222222 R = length (region); reg = NTuple {R,Int} (region)
223223 # For now, only support full transforms (all dimensions)
224224 if reg != ntuple (identity, N)
225- error ( " Partial dimension FFT not yet supported. Region $reg must be $(ntuple (identity, N)) " )
225+ @info " Partial dimension FFT not yet supported. Region $reg must be $(ntuple (identity, N)) "
226226 end
227227 desc,q = _create_descriptor (size (X),T,true )
228228 ccall_set_cfg (desc, Int32 (DFT_PARAM_PLACEMENT), Int32 (DFT_CFG_INPLACE))
@@ -318,7 +318,7 @@ function plan_brfft(X::oneAPI.oneArray{T,N}, d::Integer, region) where {T<:Union
318318 # For now, disable batching for real inverse FFTs due to oneMKL parameter conflicts
319319 # Use loop-based approach instead for multi-dimensional arrays
320320 if N > 1
321- error ( " Batched real inverse FFTs not yet supported by oneMKL - please use loop-based approach or 1D arrays" )
321+ @info " Batched real inverse FFTs not yet supported by oneMKL - please use loop-based approach or 1D arrays"
322322 end
323323
324324 stc = ccall_commit (desc, q); stc == 0 || error (" commit failed ($stc )" )
353353function ifft (X:: oneAPI.oneArray{T} ) where {T<: Union{ComplexF32,ComplexF64} }
354354 p = plan_bfft (X)
355355 # Apply normalization for ifft (unlike bfft which is unnormalized)
356- scaling = 1.0 / normalization_factor (size (X), ntuple (identity, ndims (X)))
356+ scaling = one (T) / normalization_factor (size (X), ntuple (identity, ndims (X)))
357357 scaling * (p * X)
358358end
359359function fft! (X:: oneAPI.oneArray{T} ) where {T<: Union{ComplexF32,ComplexF64} }
362362function ifft! (X:: oneAPI.oneArray{T} ) where {T<: Union{ComplexF32,ComplexF64} }
363363 p = plan_bfft! (X)
364364 # Apply normalization for ifft! (unlike bfft! which is unnormalized)
365- scaling = 1.0 / normalization_factor (size (X), ntuple (identity, ndims (X)))
365+ scaling = one (T) / normalization_factor (size (X), ntuple (identity, ndims (X)))
366366 p * X
367367 X .*= scaling
368368 X
0 commit comments