-
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
Trimming target file using desimodel.footprint.find_points_in_tiles() for fiber assignment #99
Comments
I vote that it is updated to be the maximum possible radius to ensure that all targets will lie within reach of a positioner. I agree that this does not need to do the exact per-positioner coverage. |
Would be nice to show the tile perimiter in tile plots of the fiber assignment (a fine dashed-line circle superposed on the plots just so that we know if an "edge fiber" is left unassigned, it's not for any reason other than insufficient target density or fiber collision). And, @sbailey: Agreed. clearly desimodel.focalplane.get_tile_radius_deg() controls the find_points_in_tiles() output so this is more of a "tile radius definition" issue than the find_points_in_tiles() issue. This ticket just shows how we reached to the conclusion about [possibly] changing the tile radius definition. |
Another note: In fiber assignment, the tile radius (which is used in the tree lookup to find available targets for each tile) is currently hard-coded to 1.65 degrees. This and all of the hardware properties will be reviewed after the merge when updating the positioner geometry, etc. That would be a good time to get this value from some other place like desimodel. |
The source of difference between hard-coded tile radius in hardware and what I see below is not clear to me: import desimodel.focalplane |
default tile radius updated in PR #102; closing this ticket. |
@sbailey : this is more of an inquiry than a ticket so please close it if irreleant.
Using desimodel.footprint.find_points_in_tiles() to trim the input targets for fiberassignment, could lead to unassigned fibers on edges of the tiles in low density fields. In other words, passing a not exactly cut-to-foot target file, improves the assignment efficiency on tile edges.
Plots below show the same fiber (3180) that is left unassigned when I only passed the "in-foot" targets that desimodel.footprint.find_points_in_tiles() gives out and gets assigned when I pass a looser region that encompasses the tile. The fiber seems to be able to reach the target so does this mean that the maximum partol radius should be added to the tile radius to allow that target to be considered "in-foot" in find_points_in_tiles() algorithm or there is a reason for the way that the tile radius is determined? there were three unassigned "edge" fibers like this in this tile (among POS fibers so I'm not talking about the ETC fibers). This is from the ALL_SKY assignment but I imagine it can be the case elsewhere as well.
The text was updated successfully, but these errors were encountered: