-
Notifications
You must be signed in to change notification settings - Fork 4
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
hard-coded petal alignments data file #61
Comments
This transform is coming directly from the online DB. It's generated by the script load_petal_alignments_from_db . The plan has been to replace this by a transform we would fit with desimeter, but this has not been implemented yet. I would suggest different yaml files for totally different hardware configurations, like KPNO vs LBNL petal test, rather than different configs in the same file. However, we can have several configurations in the yaml file to accommodate changes of petals, with range of dates for validity, like we have for the spectrographs calibrations, but I don't think we need that now. |
So the ptl2fp() function would get an additional argument specifying the file name to use? |
We have to think about hardware configurations more generally. It's not just |
Yes I see. My inclination is to have a single file with all the different configuration options. Then when you run an analysis, you pick one of those options. It gives you a bunch of key/value pairs saying which data to use. Like in pseudo-code: configuration file would contain:
A data file like petal-alignments file would contain:
But of course you guys have much more expertise in how you want these things handled. And I understand there may be configuration management tools you already have in place that you want to use. I do think this issue may arise quite soon, when we start running desimeter for the spare petal at LBNL. |
Documenting some thoughts before thinking some more:
Two different versions of timestamps:
(1) is mostly what we want now, and we are still regularly post-facto updating the params to apply to previous data. If desimeter starts being use more for operations, then (2) becomes more important. Good versioning could cover that, but would be a pain if we ever needed to replay what we thought the state was on N>>1 different nights without wanting to checkout N>>1 different versions of desimeter. desimodel faced similar questions for fiberassign, and effectively only supports (2) without supporting (1). |
I like a single 2D master table, with columns == every single configurable option and rows == config names. Options being sometimes a parameter, but more often a unique key that references some lower level dataset. If you want to run a different state, you make a new row. But I'm no expert on this stuff. |
In
ptl2fp.py
, there is a utility function for getting petal alignment data:desimeter/py/desimeter/transform/ptl2fp.py
Lines 44 to 51 in f3e2500
The file path is hard-coded for grabbing the alignment data. This will cause versioning confusion in either of the following future cases:
To avoid stateful confusion, I suggest that we have multiple configurations in
petal-alignments.yaml
. Identify each one by a unique key.And
ptl2fp()
function will need an additional, required argument providing this key.The text was updated successfully, but these errors were encountered: