nfsproc¶
Overview¶
nfsproc
accepts target coordinates from the Next-Field-Selector
and calculates fiber positions, a field center, and ADC prism
positions, correcting for procession, nutation, aberration,
refraction, and misalignment as necessary.
Input¶
Arguments¶
seqid
- a unique sequence identifier
instrument
- a string designating the instrument to be used (
desi
orproto
) - targets
- the target catalog used to dial the positioners
Configuration¶
TODO
Output¶
- prism
- positions for the ADC prisms
- center
- offset between boresight coordinates and field center
- positioner_pos
- the table of open-loop positioner coordinates
- fiducial_pos
- the table of open-loop fiducial coordinates, in FVC pixels
- fiber_pos
- the table of open-loop fiber coordinates, in FVC pixels
- nfs_wcs
- expected FITS WCS parameters for the field
- nfs_data
- miscellaneous parameters associated with the sequence
Return value¶
Either SUCCESS
if the the caluculation is successful, or an error message othewise.
Use¶
First, a PML
connection must be established:
>>> from DOSlib.PML import dos_connection
>>> pm = dos_connection('PLATEMAKER')
>>> pm.execute('configure')
'SUCCESS'
For this demonstration, load some sample data for the input:
>>> from PlateMaker import test_data
>>> seqid = test_data.seq_id
>>> targets = test_data.targets
Actually execute nfsproc
:
>>> pm.execute('nfsproc', seqid=seqid, targets=targets)
'SUCCESS'
The results of the calculations can then be retrieved:
>>> nfs_data = pm.execute('get', 'nfs_data')
>>> fiducial_pos = pm.execute('get', 'fiducial_pos')
>>> center = pm.execute('get', 'center')
>>> prism = pm.execute('get', 'prism')
Details¶
prismSet
¶
The position angles of the ADC prisms are calculated from the zenith distance and paralactic angle of the pointing.
The calculation is done using a polynomial fit in either tan(zd)
or sqrt(tan(zd))
.
The python implementation starts in line 51 of https://desi.lbl.gov/svn/code/online/PlateMaker/trunk/python/PlateMaker/obs.py?p=43583
The dervish implementation starts in line 113 of https://desi.lbl.gov/svn/code/online/DervishTools/trunk/desi/etc/desi.tcl?p=43583
Polynomial coefficents come from Steve Kent’s raytrace code, saved in
PRISM.par
.