select photometers for a PHOTOM observation SCULIB_PHOTOM_BOLSELECT
The observer can specify between 1 and 3 bolometers by name. Otherwise an error will be reported and the routine will return with bad status. Likewise, if any of these directly selected bolometers have bad quality or have identical Nasmyth offsets.
Now the routine branches on the number of directly selected bolometers:-
3 bolometers specified. In this case the observer must want to chop between 3 bolometers on an array. All 3 bolometers should belong to a single array, if not the routine will error and return with bad status. The routine will arbitrarily assign the 3 bolometers to the ‘left’, ’middle’ and ‘right’ projected positions in the order they were selected. The routine now checks that the 3 bolometers do lie in roughly a straight line on the sky (allowing for distortion) and that the left and right bolometers lie roughly the same distance on either side of the middle. Errors will occur and the routine return with bad status if these conditions are not met. If all is OK the routine will now store the channel/ADC numbers of the directly selected bolometers, set CHOP_COORDS to Nasmyth, the bolometer spacing to half the distance between the left and right, the chopper position angle, and the instrument ‘centre’ to the coords of the middle bolometer. Next, the routine will search the bolometers belonging to the other array. If 3 can be found that match the positions of the 3 direct bolometers and have good quality then the routine will store the channel/ADC numbers of those bolometers as well. Lastly, the routine will set the bolometers to actually be measured to all those belonging to the array(s) containing the bolometers already selected.
2 bolometers specified. In this case the observer must want to observe a source by chopping between the 2 named bolometers. The routine will arbitrarily call the first of the 2 bolometers the ‘middle’ projected bolometer, the second ‘right’. Then it will store the channel/ADC numbers of these directly selected bolometers and set the types of sub-instruments that they imply. If any of the sub-instruments are arrays the routine will search for bolometer(s) at the same Nasmyth offset in the other array and select them too. Lastly, the routine will set the bolometers to actually be measured to all those in the selected sub-instruments. CHOP_COORDS is set to Nasmyth, the bolometer spacing to the distance between the directly selected bolometers, the chopper position angle is set, and the instrument ‘centre’ to the Nasmyth coords of the middle bolometer.
1 bolometer specified. In this case the observer must want to observe a source without chopping between different bolometers. The routine will arbitrarily call the primary selected bolometer the ‘middle’ projected bolometer. ‘Left’ and ‘right’ bolometers will not be assigned. The routine will now store the channel/ADC numbers of the directly selected bolometer and set the type of sub-instrument that is implied. If the sub-instrument is one of the arrays the routine will search for a bolometer at the same Nasmyth offset in the other array and select it too. Lastly, the routine will set the bolometers to actually be measured to all those in the selected sub-instruments. The instrument ‘centre’ is set to the Nasmyth offset of the primary selected bolometer. CHOP_COORDS, the bolometer spacing and chopper position angle are all set to bad values so that the calling routine knows these have to be read explicitly from the observation definition file.
Finally, SCULIB_BOLSELECT is called to select for measurement all the bolometers belonging to the sub-instruments involved in this PHOTOM observation. An array is then calculated holding the index in the array of ALL the photometers to be measured of each projected bolometer in each sub-instrument that was directly selected.