diff --git a/src/aspire/nufft/finufft.py b/src/aspire/nufft/finufft.py index 082fd31f77..9c41fdd3de 100644 --- a/src/aspire/nufft/finufft.py +++ b/src/aspire/nufft/finufft.py @@ -103,6 +103,9 @@ def transform(self, signal): f"Signal frame to be transformed must have shape {self.sz}", ) + # FINUFFT was designed for a complex input array + signal = np.array(signal, copy=False, dtype=self.complex_dtype, order="C") + result = self._transform_plan.execute(signal) return result @@ -135,6 +138,9 @@ def adjoint(self, signal): if self.ntransforms == 1: signal = signal.reshape(self.num_pts) + # FINUFFT was designed for a complex input array + signal = np.array(signal, copy=False, dtype=self.complex_dtype, order="C") + result = self._adjoint_plan.execute(signal) return result