import pipeline.h.cli.utils as utils
# docstring and type hints: inherits from hifa.tasks.fluxcalflag.fluxcalflag.FluxcalFlagInputs.__init__
[docs]
@utils.cli_wrapper
def hifa_fluxcalflag(vis=None, field=None, intent=None, spw=None, threshold=None, appendlines=None, linesfile=None,
applyflags=None):
"""Locate and flag line regions in solar system flux calibrators.
If the flux calibrator is a solar system object (SSO), known lines in the object are flagged by this task. The
frequency width flagged is based on published spectra of 1 or 2 transitions of the species, and scaled to
maintain consistent velocity widths for other transitions. Because the flags are applied in topocentric frame,
the final width is further broadened by the maximum relative velocity between the object and the geocenter
(computed over a decade).
The following lines are flagged per SSO:
- **Mars**: 12CO (all ALMA bands), 13CO
- **Venus**: 12CO (all ALMA bands), 13CO
- **Titan**: 12CO, 13CO, HCN, H13CN, HC15N, HCN v2=1, CH3CN (through Band 8)
- **Neptune**: 12CO
The topocentric frequency ranges flagged (in GHz) per species and object are::
Mars:
CO: [115.204,115.338], [230.404,230.672], [345.595,345.997], [460.773,461.309],
[691.071,691.875], [806.184,807.120], [921.265,922.335]
13CO: [110.190,110.212], [220.377,220.421], [330.555,330.621], [440.721,440.809],
[661.001,661.133], [771.108,771.260], [881.196,881.370]
Venus:
CO: [115.206,115.337], [230.407,230.669], [345.600,345.992], [460.779,461.303],
[691.081,691.865], [806.194,807.110], [921.277,922.323]
13CO: [110.192,110.210], [220.380,220.418], [330.560,330.616], [440.727,440.803],
[661.011,661.123], [771.118,771.250], [881.208,881.358]
Titan:
CO: [114.92,115.67], [229.49,231.74], [343.82,347.62], [458.29,463.80],
[687.75,694.66], [803.46,809.85]
13CO: [110.18,110.22], [220.28,220.52], [330.36,330.82], [440.42,441.15],
[660.60,661.53], [770.65,771.72], [880.73,881.82]
HCN: [88.45,88.81], [176.73,177.80], [264.96,266.81], [353.29,355.72],
[441.74,444.52], [618.45,622.16], [707.01,710.74], [795.56,799.31], [883.82,887.86]
HC15N: [86.04,86.07], [172.05,172.16], [258.04,258.27], [430.02,430.45],
[601.95,602.60], [773.88,774.64], [859.84,860.62]
H13CN: [86.33,86.35], [172.63,172.73], [258.91,259.11], [431.44,431.88],
[603.98,604.56], [776.48,777.16], [862.72,863.42]
HCN v2=1: [177.192,177.286], [178.088,178.184], [265.782,265.924], [267.128,267.270],
[354.365,354.555], [356.161,356.351], [442.942,443.178], [445.184,445.422],
[620.058,620.390], [623.197,623.529], [708.596,708.974], [712.182,712.562],
[797.117,797.543], [801.149,801.577], [885.619,886.091], [890.096,890.572]
CH3CN: [91.938,92.008], [110.304,110.409], [128.659,128.809], [147.039,147.209],
[165.415,165.608], [183.792,184.006], [202.168,202.403], [220.543,220.798],
[238.916,239.194], [257.289,257.587], [275.660,275.980], [294.030,294.371],
[312.399,312.761], [330.766,331.149], [349.205,349.534], [367.572,367.920],
[385.938,386.303], [404.301,404.683], [422.735,423.062], [441.098,441.440],
[459.459,459.814], [477.881,478.186], [496.239,496.557]
Neptune:
CO: [113.99,116.51], [226.98,234.52], [339.97,351.54], [454.95,467.55],
[685.93,696.57], [802.92,810.58]
The WebLog reports if any flagging was required, and if this resulted in the need to use a spw-map. If more than
75% of a given spw is flagged on the flux calibrator for the above lines, then a reference spw-map
(``refspwmap``) is calculated and stored in the pipeline context so that later in ``hifa_gfluxscale``, the
``fluxscale`` task will transfer the flux scale from the nearest other spw.
Additional spectral ranges to flag can be manually specified via the ``linesfile`` parameter. The file format
is four space-delimited values per line: field name, line name, start frequency (GHz), stop frequency (GHz). The
built-in list can be ignored in favor of user-specified ranges by setting ``appendlines=False``.
Notes:
**QA Scoring**
A QA score of 0.66 is set if a spw-map was required, otherwise 1.0. There is an additional QA score based
on the incremental amount of flagging: 0.0 if the flag fraction is >=50%, 1.0 if <=5%, linearly
interpolated in between.
Returns:
The results object for the pipeline task is returned.
Examples:
1. Locate known lines in any solar system object flux calibrators:
>>> hifa_fluxcalflag()
"""