@@ -901,12 +901,12 @@ def _cook_nd_args(a, s=None, axes=None, invreal=0):
901
901
return s , axes
902
902
903
903
904
- def _iter_fftnd (a , s = None , axes = None , function = fft , overwrite_arg = False , scale_function = lambda n : 1.0 ):
904
+ def _iter_fftnd (a , s = None , axes = None , function = fft , overwrite_arg = False , scale_function = lambda n , ind : 1.0 ):
905
905
a = np .asarray (a )
906
906
s , axes = _init_nd_shape_and_axes (a , s , axes )
907
907
ovwr = overwrite_arg
908
908
for ii in reversed (range (len (axes ))):
909
- a = function (a , n = s [ii ], axis = axes [ii ], overwrite_x = ovwr , forward_scale = scale_function (s [ii ]))
909
+ a = function (a , n = s [ii ], axis = axes [ii ], overwrite_x = ovwr , forward_scale = scale_function (s [ii ], ii ))
910
910
ovwr = True
911
911
return a
912
912
@@ -1093,9 +1093,9 @@ def _fftnd_impl(x, shape=None, axes=None, overwrite_x=False, direction=+1, doubl
1093
1093
res
1094
1094
)
1095
1095
else :
1096
- sc = ( < object > fsc ) ** ( 1 / x . ndim )
1096
+ sc = < object > fsc
1097
1097
return _iter_fftnd (x , s = shape , axes = axes ,
1098
- overwrite_arg = overwrite_x , scale_function = lambda n : sc ,
1098
+ overwrite_arg = overwrite_x , scale_function = lambda n , i : sc if i == 0 else 1. ,
1099
1099
function = fft if direction == 1 else ifft )
1100
1100
1101
1101
0 commit comments