Cython binding to MAD-X
This version of cpymad should be built against MAD-X 5.04.02. It can be installed on linux, Windows and Mac (but I can’t offer much help for Mac). Python 3 is recommended but not (yet) required.
The cpymad source code itself is under free license.
However, the MAD-X software package and henceforth all binary cpymad package distributions are NOT FREE.
cpymad is NOT maintained by CERN members and links against an unofficial build of MAD-X that is not supported by CERN, i.e. this binary may have problems that the official binary does not have and vice versa.
If you have a problem with a sequence file, first try to check if that problem remains when using the MAD-X command line client distributed by CERN, then:
- Report the issue to CERN only if it can be reproduced with their official command line client.
- Report the issue here only if it can not be reproduced with their official command line client.
For issues regarding the cpymad code itself or usage information, I’m happy to answer. Please keep it precise, specific, and concise and provide all the necessary information.
- fix broken caching logic in travis config
- move type constants to cpymad.types
- export a MAD-X dtype to python type mapping from cpymad.types
- suppress internal stack traces
- raise exception for failed twiss instead of returning invalid table that will crash later on
- fix incorrect Element.position attribute for sequences with refer=entry or refer=exit
- allow passing parameters with underscore suffix to commands, this allows passing parameters as bare words that conflict with python keywords (e.g. madx.command.select(class_='quadrupole')
- improve repr() for Table: show column names
- add Table.dframe() method to return pandas dataframe (provisional API)
- return success status from Madx.input (MAD-X errorflag)
- update install instructions to account for symbol visibility
- fix MAD-X crash on errors due to interposition of error by libc (linux)
- automatically update documentation from travis
- add quit method to shutdown the interpreter and wait for the process
- fix file deletion in case of errors within temp_filename context
- make Madx usable as context manager
- use the correct line continuation in .bat example
- fix manylinux build error: not creating libmadx.c
- fix “Permission denied” error when having to clone MAD-X etc
- fix incorrect ABI in the -cp27mu- wheel
- allow specifying MAD-X/cpymad source tarballs for manylinux build
- rework usage of data volumes in manylinux container: readonly cpymad folder
- automatically build and upload manylinux releases from travis!
- fix rare race-condition in stream reader -> delayed output
- replace some magic numbers with human readable names
- use coverage combine instead of custom path hack before uploading coverage data
- move cpymad package to unimportable subdirectory
- update to MAD-X 5.04.02
The full changelog is available online in CHANGES.rst.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.