You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The user cannot currently choose the FFT method. The available methods are searched in fixed order, and the same sequence of try-except clauses is repeated in several modules (cascade.decomposition, noise.fftgenerators, noise.utils and motion.darts). A more sensible way, that would also allow the user to choose the FFT method, would be implementing an interface module for different methods.
The text was updated successfully, but these errors were encountered:
@pulkkins , since the fft method is used in several modules, another alternative to the interface is implementing something similar the matplotliob.use function used to set the plot backends.
The default fft method can be defined in the rcparams by default, and changed by the the user.
Then, fft method can be changed in runtime by calling a function pysteps.set_fft("fft_method").
To force all the modules to use the selected fft, the pysteps modules can make use of a pysteps.fft function that is updated by the set_fft method changing its reference to the corresponding method. When the user select a library that is not installed, an exception is raised.
In this way, the sources that use the fft only need to import it as **from pysteps import fft".
I agree with @aperezhortal, we could actually use the rcparms for many of the parameters in pysteps, thus avoiding having every time to pass a long list of arguments when calling a nowcasting method.
The FFT interface module has been implemented. I'll leave this issue open because using rcparams for choosing the FFT method still needs to be implemented.
The user cannot currently choose the FFT method. The available methods are searched in fixed order, and the same sequence of try-except clauses is repeated in several modules (cascade.decomposition, noise.fftgenerators, noise.utils and motion.darts). A more sensible way, that would also allow the user to choose the FFT method, would be implementing an interface module for different methods.
The text was updated successfully, but these errors were encountered: