Question for magnet in series and familly used for tune #10
Replies: 5 comments 48 replies
-
Dear @JeanLucPons, almost. |
Beta Was this translation helpful? Give feedback.
-
I agree with @JeanLucPons to solve a system with 2 unknowns in theory we need only 2 variables so we should try to reduce the problem to that to make an exact inversion. There are 2 ways too do this: |
Beta Was this translation helpful? Give feedback.
-
I think we should perhaps think a bit longer about how to handle magnets in series vs individually powered magnets. At HZB we have individual names of the magnets but that doesn't mean that they are individually powered. pyAML needs to understand that if I make a change to one of the magnets all of them should be changed both in the simulator and in the live machine. This MML currently can't handle since there is no concept of power supplies and mapping for it only exists in the config for LOCO to be able to fit by power supply. MML also has what I think is a pretty ugly way to implement things like power muxer and shunts to be able to change quads individually for BBA when powered in series. Maybe if we in pyAML had a better implementation of power supplies than what MML has it would also solve the problem @JeanLucPons has? I'm also wondering why you want to calculate the tune response matrix in this way. Why don't do it like in MML and just run the measurement of the tune response matrix on the simulator? That seems to me like an easier path to later be able to add abstraction for the simulation engine in the future and we don't need a separate implementation for getting the simulated tune response matrix? |
Beta Was this translation helpful? Give feedback.
-
I agree with Teresia. This test case is already telling us a lot. For magnets in series, I think we could consider this solution (just a proposal). An element must corresponds to an hardware name and index in the model, configured somewhere.
For the tune configuration, then the element is already taking care of magnets connected to the same power supply or not and changes accordingly the correct indexes and polynomB/A fields in AT. I also agree about using the pyaml.model.design.quad.strength.set()/get() and pyaml.model.desgin.tune.get() to compute the tune response. It has also the advantage to bring the simulator features into the design of the tune correction test case. |
Beta Was this translation helpful? Give feedback.
-
Hi everyone, I'm reopening this discussion due to a recurring issue we've encountered. To improve this, I propose delegating the linking logic between PyAML elements (referenced by name) and PyAT elements to a set of dedicated modules.
The module to use (including custom implementations defined outside This modular approach would make the mapping mechanism more flexible and better aligned with different use cases and naming conventions. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
For the EBS tune we use QF1 and QD2.
sr.model.qtune.strength.set( [8 values] )
QD2A/E and QF1A/E will then be considered as magnet in series.
@simoneliuzzo
Will the above config will work with the code below ?
Beta Was this translation helpful? Give feedback.
All reactions