[home]
MAD-X Roadmap (2014-2016)
Disclaimer: this roadmap does not include the development of the MAD 'next-generation' as the process development is more complex and does not involve the MAD-team for the time being (only partial time of LD). Still, some items hereafter must take into account that their main objective is to better serve the transition to the MAD-NG.
Each item description of the roadmap is ending with a tag where 'D:' stands for 'depends on' (i.e. items that must be achieved before), and 'A:' stands for 'assigned to' (i.e. person in charge of the item).
Management
- Define and agree on this roadmap [D:_, A:_].
- Define and agree on a lightweight but efficient procedure for code review [D:_, A:_].
- Define and agree on a procedure for collaborative developement using branching [D:_, A:_].
- Define and agree on a procedure to handle and follow-up tickets sent to mad support [D:_, A:_].
- Define and agree on a procedure to assign and handle items in trac [D:_, A:_].
- Define and agree on a procedure for updating the website (e.g. using svn) [D:_, A:_].
- Establish the list of reference persons to contact in case important changes are envisaged in MAD-X [D:_, A:_].
Documentation
- Provide a new structure and table of content for the refactoring of the users' guide [D:_, A:_].
- Complete the switch from html to Latex for online documentation [D: 11., A:_].
- Define a strategy to export latex to html for alternative online documentation update [D: 11., A:_].
- Provide online access to all reference documents [D: 11. 12., A:_].
- Improve the users' guide content [D: 11. 12. 13., A:_].
- Create an Administation webpage with restricted access to the MAD team [D:_, A:_].
- Improve the Development webpage to include the documentation and procedures for developpers [D:_, A:_].
- Simplify the Release webpage for users [D: 17., A:_].
- Provide clear and simple coding recommendations [D: 17., A:_].
- avoid C++ and limit the use of Fortran, always close your modules, use meaningful names, ensure compliance with standards.
Development and testing
- Add more “user case” tests [D:_, A:_].
- time consuming, risk/chance of finding more bugs.
- Remove code duplication and replace known algorithms by external libs/apps [D:_, A:_].
- Define a benchmarking protocol of the elements, include the benchmarks in the tests [D:_, A:_].
MAD-X legacy physics
- Twiss+Track (+Survey) physics recovery, documentation and benchmarking [D:_, A:_].
- clarify the canonical variables and transformations.
- clarify the calculation of the chromaticity.
- review implementation of closed opbit finder and threader (TLEP).
- review implementation of field and alignment errors.
- review implementation of
bv flag.
- record the dependencies from other modules.
- Cororbit physics recovery, documentation and benchmarking [D:_, A:_].
- find and possibly cure the unstability observed in the tests for gnu32 on lxplus.
- simplify the code and remove duplication, prepare for the MAD-NG transition.
- Review consistency between Embedded Twiss and Twiss [D: 31., A:_].
- review its use by Aperture and Plot modules.
- Review implementation of Aperture, parameters inheritance and collimators [D:_, A:_].
- Review implementation of Plot for transition to MAD-NG [D:_, A:_].
- Implement and benchmark Thick Dipole in Track [D: 31., A:_].
- Review (or implement) and benchmark radiation for lepton machines (TLEP) [D: 31., A:_].
MAD-X/PTC connexion and physics
- Review and improve MAD-X to PTC connection [D:_, A:_].
- missing terms in maps, missing (MAD-X) features.
- check 4D, 5D, 6D consistency in ptc_track, ptc_twiss, ptc_normal.
- review ptc_setswitch behavior.
- provide more tests for exisiting features.
- Review (or implement) and benchmark physics of fringe fields for bends and quads [D:_, A:_].
- review models, benchmark results, implement missing features.
- Review (or implement) and benchmark physics of combined magnets (frs for PS, Keil for Emma) [D:_, A:_].
- review (the 3) models, benchmark results, implement missing features.
- Implement moments for beam distributions >4D [D:_, A:_].
- Implement beam-beam element for insertion in thick elements [D:_, A:_].
- Handle pending users' requests [D:_, A:_].
- EALIGN DPSI errors on MB gives wrong tunes in ptc_align.
- Cavity defined via harmonic number not process by ptc_twiss.
- Add chromatic components to ptc_twiss.