#pycraf

2025-02-10

I'm not only a big fan of free open source software #FOSS, but also of open data. Compared to when I started with spectrum management (protecting radio astronomy frequencies) some ~10 years ago, the availability of public datasets with fantastic quality has sky rocketed.

Today, we use Lidar-based topographic (height) maps, which help us determining the level of terrain shielding of our sensitive telescopes from terrestrial transmitters such as cell-phone towers. We can query openstreetmap to obtain road data - very useful if you want to study the impact of car radars on observations. Thanks to the European Copernicus programme, we also have access to population densities, land cover data and so much more.

Thanks a lot also to the developers of easy-to-use software, which allows us to work with all these datasets with ease. We are truly standing on the shoulders of giants... The Committee on Radio Astronomy Frequencies (#CRAF craf.eu/) contributes a small part to this: with our #pycraf (pypi.org/project/pycraf/) software package for #Python, which can be used for spectrum management compatibility studies.

Information on image content and licenses in the next post. 1/2

A map showing terrain heights in southern France, with snow-covered mountain ranges in the East and low-altitude areas in the West.A very patchy looking map with different colors showing areas of different land cover type. For example, red colors show more urban areas, while green patches mark forests.A network of roads on the island of Sardinia with different colors indicating different types of roads.A yellow-blueish map indicating the population numbers near Cologne and Bonn in Germany. The two cities are clearly visible as more people live there compared to the more rural areas in the surroundings.
2025-02-02

I'm happy to announce a new version of our #pycraf #Python package:

github.com/bwinkel/pycraf

The only change is that it now runs with numpy v2. Doesn't sound like much, but it was some effort, as pycraf uses a lot of #Cython (i.e., compiled code) under the hood.

I was extremely happy when I realized that with numpy 2 one doesn't need to pin certain versions for ABI compatibility anymore. If you don't know what that means, don't worry - it's developer/package maintainer stuff. Apparently, even if you build the binary packages with numpy v2, it should still run under numpy v1. Magic. Will safe me hours of maintenance time, which can be better spent on new features.

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst