Skip to main content

Cython binding to MAD-X

Project description

Latest Version License: CC0, Apache, Non-Free Python versions Linux build status Windows built 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.

Tests

When a commit is pushed upstream, the tests are automatically run on the following continuous integration (CI) systems:

  • AppVeyor runs the tests in windows environments for python{2.7,3.4}. Windows built status

  • Travis CI runs the tests in a linux container for python{2.7,3.3,3.4,3.5,3.6}. For performance reasons the tests make use of a precompiled version of the MAD-X library which is hosted in an unofficial launchpad PPA. Linux build status Coverage

Changelog

1.1.1

Date: 18.02.2019

  • build with GC 8.0.2 on windows

  • build 32bit wheels for linux

1.1.0

Date: 16.02.2019

  • add AttrDict.update() method similar to regular dicts

  • add Table.row_names() query method

  • use row names as table index for pandas dataframe

  • add Madx.batch() context manager to collect commands before sending them to MAD-X in a single batch all at once (performance)

  • add a convenience parameter Madx(history=[]) to simplify capturing history

  • explicitly specify zip_safe=False for the cpymad package. This will work better for builds against shared MAD-X library

  • close CommandLog files when calling Madx.quit() (if they were opened by us)

Finally, this is the first release to automate the release process for windows wheels:

  • build windows wheels on appveyor

  • upload windows wheels to pypi on tags

  • test cpymad on windows using appveyor

1.0.11

Date: 18.01.2019

  • guard expr_vars against passing None etc

  • add elems parameter to normalize_range_name

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.1.1.tar.gz (174.8 kB view hashes)

Uploaded Source

Built Distributions

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

Uploaded CPython 3.7m Windows x86-64

cpymad-1.1.1-cp37-cp37m-win32.whl (3.9 MB view hashes)

Uploaded CPython 3.7m Windows x86

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

Uploaded CPython 3.7m

cpymad-1.1.1-cp37-cp37m-manylinux1_i686.whl (7.3 MB view hashes)

Uploaded CPython 3.7m

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

Uploaded CPython 3.6m Windows x86-64

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

Uploaded CPython 3.6m Windows x86

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

Uploaded CPython 3.6m

cpymad-1.1.1-cp36-cp36m-manylinux1_i686.whl (7.3 MB view hashes)

Uploaded CPython 3.6m

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

Uploaded CPython 3.5m Windows x86-64

cpymad-1.1.1-cp35-cp35m-win32.whl (3.9 MB view hashes)

Uploaded CPython 3.5m Windows x86

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

Uploaded CPython 3.5m

cpymad-1.1.1-cp35-cp35m-manylinux1_i686.whl (7.3 MB view hashes)

Uploaded CPython 3.5m

cpymad-1.1.1-cp34-cp34m-win_amd64.whl (4.4 MB view hashes)

Uploaded CPython 3.4m Windows x86-64

cpymad-1.1.1-cp34-cp34m-win32.whl (3.9 MB view hashes)

Uploaded CPython 3.4m Windows x86

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

Uploaded CPython 3.4m

cpymad-1.1.1-cp34-cp34m-manylinux1_i686.whl (7.3 MB view hashes)

Uploaded CPython 3.4m

cpymad-1.1.1-cp33-cp33m-win_amd64.whl (4.3 MB view hashes)

Uploaded CPython 3.3m Windows x86-64

cpymad-1.1.1-cp33-cp33m-win32.whl (3.8 MB view hashes)

Uploaded CPython 3.3m Windows x86

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

Uploaded CPython 2.7mu

cpymad-1.1.1-cp27-cp27mu-manylinux1_i686.whl (7.3 MB view hashes)

Uploaded CPython 2.7mu

cpymad-1.1.1-cp27-cp27m-win_amd64.whl (4.4 MB view hashes)

Uploaded CPython 2.7m Windows x86-64

cpymad-1.1.1-cp27-cp27m-win32.whl (3.9 MB view hashes)

Uploaded CPython 2.7m Windows x86

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

Uploaded CPython 2.7m

cpymad-1.1.1-cp27-cp27m-manylinux1_i686.whl (7.3 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