Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Generalized Mad-X Parser #268

Draft
wants to merge 15 commits into
base: development
Choose a base branch
from

Conversation

np-eazy
Copy link
Member

@np-eazy np-eazy commented Oct 3, 2022

This is enhancing the MAD-X lattice parser capabilities from #214 with a more general parser.
Close #104

Step 1 (WIP): Transcribe and adapt the original MadX C interpreter in Python for ImpactX. We cannot copy-paste the C files directly into ImpactX which uses C++, and we also cannot run MadX as a dependency since the latter relies on so many other dependencies. Thus, this brute-force approach is best, also given that we want to avoid tinkering with the parsing logic itself.

Step 2: Post-execution, map interpreter objects to already-defined ImpactX input file objects.

@ax3l ax3l changed the title MadX Parser [WIP] MadX Parser Oct 3, 2022
@ax3l ax3l changed the title [WIP] MadX Parser [WIP] Generalized MadX Parser Oct 3, 2022
@ax3l ax3l self-requested a review October 3, 2022 20:17
@ax3l ax3l added this to the Integrated Modeling milestone Oct 3, 2022
@ax3l ax3l added changes input scripts / defaults Changes the syntax or meaning of input scripts and/or defaults component: elements Elements/external fields labels Oct 3, 2022
@ax3l ax3l changed the title [WIP] Generalized MadX Parser [WIP] Generalized Mad-X Parser Oct 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changes input scripts / defaults Changes the syntax or meaning of input scripts and/or defaults component: elements Elements/external fields
Projects
None yet
Development

Successfully merging this pull request may close these issues.

MAD-X input reader: constants, elements, lines, segments
2 participants