Hello All,
Is a Python version of k-Wave possible? If so, has someone implemented it in Python? If not, I am trying to figure out the smallest possible set of functions I can implement on my own to do this.
Thanks
Hello All,
Is a Python version of k-Wave possible? If so, has someone implemented it in Python? If not, I am trying to figure out the smallest possible set of functions I can implement on my own to do this.
Thanks
Hi rehmanali1994,
I don't think so. Actually, what benefit against Matlab should that bring? No Matlab license needed? Higher speed than Matlab/C++(very unlikely)? Faster development than Matlab (questionable) / C++ (maybe)?
I have been thinking of implementing the framework in python, however, all computational kernels would still have to be implemented in C++/CUDA. Otherwise, the Python implementation will be 100x slower than Matlab!
If you wanted to code your own Python k-Wave to give it a try, I recommend to take a look at the C++ version of the code. Recoding will be very straightforward, but as I said, FFTW/MKL and C++ kernels (numpy?) would have to be used to get any reasonable execution time.
Best
Jiri
Hi Jiri,
Rewriting k-Wave in Python wouldn't make much sense as you pointed out. However being able to call the C++/CUDA k-Wave from Python to essentially remove Matlab from the equation would be very useful.
-G
Hi,
I agree with G. I think a script to generate input.h5 and call C++ binary and read output.h5 back into Python would be sufficient. Should not be that difficult if once HDF5 structure is known. Can be a contribution of a user as well.
Umit,
Hi Umit,
We now have a prototype version of code to save the input file from Python. See this topic for the download link.
Brad.
As an alternative, embedding Matlab in Python is officially supported since some time. So your Python code can just prepare parameters and input data, and then call a Matlab function/script directly in Python and the recover the data. If saving in Matlab 7.0 file format, scipy can read it with out too much trouble. Even reading from the new 7.3 format is quite easy do using h5py as 7.3 is based on HDF5.
You must log in to post.