Skip to main content

Cython binding to MAD-X

Project description

Latest Version License: CC0, Apache, Non-Free Python versions Test Status Coverage

cpymad is a Cython binding to MAD-X for giving full control and access to a MAD-X interpreter within the python environment.

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.

License

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.

For more details, see COPYING.rst and the MAD-X license.

Reporting issues

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.

Changelog

1.0.9

Date: 21.11.2018

  • 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

1.0.8

Date: 18.10.2018

  • 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

1.0.7

Date: 19.09.2018

  • fix io.UnsupportedOperation on python2 when sys.stdout is not a file

  • increase minrpc dependency to better comply with redirected stdouts

  • fix DeprecationWarning due to not importing ABCs from collections.abc

  • improvements in test suite and automatic style checks

Older versions

The full changelog is available online in CHANGES.rst.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cpymad-1.0.9.tar.gz (171.9 kB view hashes)

Uploaded Source

Built Distributions

cpymad-1.0.9-cp37-cp37m-win_amd64.whl (4.4 MB view hashes)

Uploaded CPython 3.7m Windows x86-64

cpymad-1.0.9-cp37-cp37m-win32.whl (3.8 MB view hashes)

Uploaded CPython 3.7m Windows x86

cpymad-1.0.9-cp37-cp37m-manylinux1_x86_64.whl (8.3 MB view hashes)

Uploaded CPython 3.7m

cpymad-1.0.9-cp36-cp36m-win_amd64.whl (4.4 MB view hashes)

Uploaded CPython 3.6m Windows x86-64

cpymad-1.0.9-cp36-cp36m-win32.whl (3.9 MB view hashes)

Uploaded CPython 3.6m Windows x86

cpymad-1.0.9-cp36-cp36m-manylinux1_x86_64.whl (8.3 MB view hashes)

Uploaded CPython 3.6m

cpymad-1.0.9-cp35-cp35m-win_amd64.whl (4.4 MB view hashes)

Uploaded CPython 3.5m Windows x86-64

cpymad-1.0.9-cp35-cp35m-win32.whl (3.8 MB view hashes)

Uploaded CPython 3.5m Windows x86

cpymad-1.0.9-cp35-cp35m-manylinux1_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 3.5m

cpymad-1.0.9-cp34-cp34m-win_amd64.whl (4.3 MB view hashes)

Uploaded CPython 3.4m Windows x86-64

cpymad-1.0.9-cp34-cp34m-win32.whl (3.8 MB view hashes)

Uploaded CPython 3.4m Windows x86

cpymad-1.0.9-cp34-cp34m-manylinux1_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 3.4m

cpymad-1.0.9-cp33-none-win_amd64.whl (4.3 MB view hashes)

Uploaded CPython 3.3 Windows x86-64

cpymad-1.0.9-cp33-none-win32.whl (3.8 MB view hashes)

Uploaded CPython 3.3 Windows x86

cpymad-1.0.9-cp27-none-win_amd64.whl (4.3 MB view hashes)

Uploaded CPython 2.7 Windows x86-64

cpymad-1.0.9-cp27-none-win32.whl (3.8 MB view hashes)

Uploaded CPython 2.7 Windows x86

cpymad-1.0.9-cp27-cp27mu-manylinux1_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 2.7mu

cpymad-1.0.9-cp27-cp27m-manylinux1_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 2.7m

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page