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
I'm trying to compute the DM values given the distance and the sky position for a lot of objects.
I have saved the distances and the sky positions in galactic coordinates in numpy.arrays and I was wondering if there is a way to directly pass numpy.arrays as arguments to the methods pygedm.dist_to_dm.
I did think about doing this but got exhausted of working on the code! Nevertheless you inspired me, so I had a stab at it. There's a first attempt on a new branch numpy-array-issue21.
Currently only works for YMW16, and you need to use the pybind shared object manually (import ymw16).
Here's an example:
importnumpyasnpimportymw16importosfrompkg_resourcesimportresource_filenameDATAPATH=os.path.dirname(resource_filename("pygedm", "spiral.txt"))
gl=np.array([1,2,3,4], dtype='float64')
gb=np.array([1,2,3,4], dtype='float64')
dm=np.array([10, 15, 20, 25], dtype='float64')
out=ymw16.dmdtau_np(gl, gb, dm, 0., 2, 1, 0, DATAPATH, '')
# output is Nx2 array (DM, tau_sc), but needs to be reshapedprint(out.reshape((-1, 2)))
To use this you will need to checkout the branch with git, then install from source with pip install -e .. I don't have time at the moment to properly integrate this with pygedm, could me a month or two before I get around to it (If you're up for the challenge, pull requests always welcome 😄).
For reference to me in the future / anyone else interested, we would need to:
Update ymw16_wrapper.py so numpy arrays can be used
Write a unit test for YMW16 numpy version
Write a NE2001 version (edit ne21c/main.cpp)
Update ne2001_wrapper.py
Write a unit test for NE2001 numpy version
Make sure it works with the high-level pygedm.dist_to_dm and whatnot.
Hi,
I'm trying to compute the DM values given the distance and the sky position for a lot of objects.
I have saved the distances and the sky positions in galactic coordinates in numpy.arrays and I was wondering if there is a way to directly pass numpy.arrays as arguments to the methods
pygedm.dist_to_dm
.At the moment if I run the following example:
The following error comes out:
Looping on the values is a solution but it is also slow for many objects and I'm trying to optimize the script I'm working on.
Thank you very much for the help,
Michele
The text was updated successfully, but these errors were encountered: