rdemaria / pysixtrack

Reference sixtrack tracking engine in pure python
Apache License 2.0
1 stars 12 forks source link

improved error handling #33

Open aoeftiger opened 4 years ago

aoeftiger commented 4 years ago

To be improved before merging:

  1. integrate error handling for PySixTrack already into loader_madx functionality -- by reading out errors via new cpymad functionality, e.g.:
    
    >>> seq = madx.sequence.XYZ
    >>> multipole = seq.expanded_elements[0]
    >>> multipole.align_errors
    AlignError(dx=-2.1754812916408347e-05, dy=-6.556356908596416e-06, 
    ds=0.0, dphi=0.0, dtheta=0.0, dpsi=0.0, mrex=0.0, mrey=0.0, mredx=0.0, 
    mredy=0.0, arex=0.0, arey=0.0, mscalx=0.0, mscaly=0.0)

multipole.field_errors.dkn [0.0, 1.1472076071601915e-06, 5.002980147857331e-06, 0.013090083041168831, -0.19713806015162913, -73.91912412030126, -9.796705181638819, 0.0, (...) 0.0]


2. possibly remove current approach with error table read out (more cumbersome approach, bloated functionality in PySixTrack)

Originally posted by @aoeftiger in https://github.com/rdemaria/pysixtrack/pull/28#issuecomment-531127078