[WIP] Rename Attributes kind and MagneticMultipoleP
#10
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Following @cemitch99's hint about the default ordering of attributes applied when we call Pydantic's default
model_dump(i.e., upper-case has precedence over lower-case, then alphabetical order), we could also renamekindasType(upper-case, so it is treated with precedence) andMagneticMultipolePasmagnetic_multipole_parameters(lower-case, so it is treated like all other attributes).Other options for
magnetic_multipole_parameterscould work too, e.g.,magnetic_multipole.The result for the FODO example, without further tweaks, would be the following:
{ "Type": "Line", "line": [ { "Type": "Drift", "length": 0.25, "name": "drift1" }, { "Type": "Quadrupole", "length": 1.0, "magnetic_multipole_parameters": { "Bn1": 1.0 }, "name": "quad1" }, { "Type": "Drift", "length": 0.5, "name": "drift2" }, { "Type": "Quadrupole", "length": 1.0, "magnetic_multipole_parameters": { "Bn1": -1.0 }, "name": "quad2" }, { "Type": "Drift", "length": 0.5, "name": "drift3" } ] }