A community effort to develop an open standard library for Medical Physics in Python. Building quality transparent software together via peer review and open source distribution. Open code is better science.
This documentation is currently undergoing a major revamp. At this point in time many of the below links will take you to empty pages. If you are able to help, drop me a line at firstname.lastname@example.org.
Are you new to PyMedPhys or new to Python programming? Then these resources are for you:
Here is a high level overview of how the documentation is organised to help you to know where to look for things:
- Tutorials take you by the hand through a series of steps to create a tool built with PyMedPhys for use within a Medical Physics clinic. Start here if you’re new to PyMedPhys or Python programming.
- How-To guides are recipes. They guide you through the steps involved in addressing key problems and use-cases. They are more advanced than tutorials and assume some knowledge of how to build tools with PyMedPhys.
- Reference Documents is the technical reference for the public APIs exposed
by both the
pymedphyslibrary and the
pymedphyscommand line tool.
- Explanatory documents provide the higher level descriptions of the implementation of the tools and provides justifications for development decisions.
Beyond the user documentation there are two other sections, the
contributor documentation aimed at those who wish to become a PyMedPhys
contributor, and the labs documentation which details code contributed by
the community that aims to one day be refined to become part of the primary
A place to share, review, improve, and transparently learn off of each other’s code. It is a library of tools that we all have access to and, because of its license, will all have access to whatever it becomes in the future. It is inspired by the collaborative work of our physics peers in astronomy and their Astropy Project. PyMedPhys is available on PyPI, GitHub and conda-forge.
PyMedPhys is currently within the
beta stage of its life-cycle. It will
stay in this stage until the version number leaves
0.x.x and enters
1.x.x. While PyMedPhys is in
beta stage, no API is guaranteed to be
stable from one release to the next. In fact, it is very likely that the
entire API will change multiple times before a
1.0.0 release. In practice,
this means that upgrading
pymedphys to a new version will possibly break
any code that was using the old version of pymedphys. We try to be abreast of
this by providing details of any breaking changes from one release to the next
within the Release Notes.
PyMedPhys is what it is today due to its contributors. Core contributors and contributors who have been active in the last six months as well as their respective employers are presented below.