pyaml user feedback using SOLEIL II digital twin #30
Replies: 9 comments 4 replies
-
|
Many thanks for this feedback.
quad.strength = 0.5In order to get rid of this kind on invisible error: quad.strenght = 0.5 |
Beta Was this translation helpful? Give feedback.
-
|
You're wellcome, it's good to be finally able to try it. My idea is too give this kind of feedback every two week or so (or more often if needed) to test what has been developped. For the setter and getter, it's just a comment related to my preferences as a user. To me, it's more natural python code, more direct, compact and it has a better readability. When you learn a new python package, it's much more simple if it works like the rest of the python ecosystem. |
Beta Was this translation helpful? Give feedback.
-
|
Would it be possible to move this overall feedback to the discussion section and cut into several issues in order to let people take some tasks ?
Thanks |
Beta Was this translation helpful? Give feedback.
-
|
I've tried to move this issue to discussion. There's a technical problem with GitHub. I can only move it to discussion of the pyaml repository but not to the discussion of pyAML organisation (where all discussions are). In the pyAML organisation, I cannot find a way to add issues. @TeresiaOlsson maybe you have more rights than me and can enable issues in the organisation. Then we can convert some of the issues, like feedback from SOLEIL and MAX IV, to discussions instead. |
Beta Was this translation helpful? Give feedback.
-
|
Discussions are tied to a repository. The organizational level discussions I have set up to connect to the discussions in the But why do you want to move it when the feedback is related to this repository? I put the feedback from HZB and MAX IV explicitly in this repository for that reason and not as a discussion. In a couple of weeks Marco and I will also test the |
Beta Was this translation helpful? Give feedback.
-
|
The problem is that issues appear in the project TODO list. |
Beta Was this translation helpful? Give feedback.
-
I agree and I already brought this point up during the specification writing process. However, other packages (such as They way they have done it is by introducing a signal level (which also actually is a device since it inherits from |
Beta Was this translation helpful? Give feedback.
-
Okay. To move it to the discussion in this repository sounded like @gubaidulinvadim could do? It's only moving to the organizational level discussion that didn't work? |
Beta Was this translation helpful? Give feedback.
-
|
This issue now has been converted to a discussion. Next actions to take:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Context
Thanks to the work of @Pichon, I was able to test the current
pyamlversion on the SOLEIL II digital twin (based on a modified version of the ESRF-EBS simulator).Here is some user feedback on the current implementation, I propose to discuss it and them to split it in subtasks when we agree on some changes.
For this feedback, I focused on the most basic features of pyAML but I was also able to run the tune response matrix example of @JeanLucPons adapted to the SOLEIL II lattice. I think that with a few modifications to the actual code base, we will not be too far from a version in which we will be able to implement the chosen use cases.
be8b5d0e5f2e08f674c7072d3761fd6f6f77bef2pyamlcodebase.General Comments
get/setfunctions, which feels un-Pythonic. Consider using properties with getters/setters for a smoother user experience._or__to hide them from introspection (e.g., in IPython/terminal).pyaml(used to load.yamlconfigurations) should have a descriptive name, e.g.,load_pymal_config.Specific Feedback
pyaml.lattice.simulator.Simulator/pyaml.controlsystem.TangoControlSystemget_all_magnetsMethod:dict, but should return an array to enable filtering/sorting.pyaml.lattice.magnet__repr__Method:control_mode(e.g.,simulatedvs.live) to avoid confusion.__str__Method:hardware_nameAccessibility:pyTango/pyEPICS).device_proxyattribute to return theTangoDeviceProxyfor the element.pyaml.arrays.magnet_arrays.MagnetArrayqcorr[0:5]) should return aMagnetArray, not alist.qcorr[0:5].strengths→AttributeError: 'list' object has no attribute 'strengths'.MagnetArrayclass is currently too simplistic and lacks key features for practical use.MagnetArray(different magnet types).hardware_namenamepyaml.control.abstract_impl.RWStrengthScalargetMethod:float.pyaml.arrays.magnet_array.RWMagnetStrengthsh1.strengths.set(1)→TypeError: 'float' object is not subscriptableBeta Was this translation helpful? Give feedback.
All reactions