Skip to content

Create more structured parameter mapping for alignment workflow #365

@tomeichlersmith

Description

@tomeichlersmith

The whitespace-separated text files do not have all of the information I would like to derive from a parameter mapping (for example, I'd love to separate axial/stereo without having to do a string-based search).

I'm imagining a JSON file that dumps more information than necessary. I'm thinking each parameter would be a dictionary and then the dictionary could have a few helpful entries

{
  "id" : "<millepede id number>",

  "short_sensor_name" : "<short name consisting of characters representing the sensor e.g. 'TL3A'>",
  "long_sensor_name" : "<long name consisting of words representing the sensor e.g. 'top layer 3 axial'>",
  "ax_st" : "1 for axial, 2 for stereo",
  "half" : "1 for top, 2 for bottom",
  "layer" : "HPS layer number",
  "h_s" : "0 for front, 1 for hole, 2 for slot",
  "f_b" : "1 for front, 2 for back",

  "t_r" : "1 for translation, 2 for rotation",
  "uvw" : "1 for u, 2 for v, 3 for w",
  "move_name" : "<short name for movement e.g. 'tu'>"
}

We could even go further and add more structure to this map to avoid repetition. We could define a "sensor" to be

{
  "short_sensor_name" : "<short name consisting of characters representing the sensor e.g. 'TL3A'>",
  "long_sensor_name" : "<long name consisting of words representing the sensor e.g. 'top layer 3 axial'>",
  "ax_st" : "1 for axial, 2 for stereo",
  "half" : "1 for top, 2 for bottom",
  "layer" : "HPS layer number",
  "h_s" : "0 for front, 1 for hole, 2 for slot",
  "f_b" : "1 for front, 2 for back"
}

And a "movement" to be

{
  "t_r" : "1 for translation, 2 for rotation",
  "uvw" : "1 for u, 2 for v, 3 for w",
  "move_name" : "<short name for movement e.g. 'tu'>"
}

And then each millepede parameter would be

{
  "id" : "<millepede id number>",
  "sensor" : "<short_sensor_name>",
  "movement" : "<move_name>"
}

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions