Description
This function enables cumulative calibration using calibrater.
It is the analog of the task ``CLCAL'' in classic AIPS.
The accumulate function is useful when:
- a calibration solution of a particular type already exists,
- an incremental calibration solution of the same type is desired
(an incremental solution in this context means derived independently
from, or determined with respect to, the first)
- the first calibration cannot be implicitly recovered in the course
of obtaining the incremental solution
For example, a phase-only ``G'' self-calibration on a target source
may be desired to tweak the full amplitude and phase ``G'' calibration
already obtained from a calibrator. The initial calibration (from the
calibrator) contains amplitude information, and so must be carried
forward, yet the phase-only solution itself cannot (by definition)
recover this information, as a full amplitude and phase
self-calibration would. In this case, the initial solution must be
applied while solving for the phase-only solution, then the two
solutions combined to form a cumulative calibration embodying
the net effect of both. In terms of the Measaurement Equation, the net
calibration is the product of the initial and incremental
solutions.
The analog of accumulate in classic AIPS is the use of CLCAL to
combine a series of (incremental) SN calibration tables to form
successive (cumulative) CL calibration tables.
Cumulative calibration tables also provide a means of generating
carefully interpolated calibration, on variable user-defined
timescales, that can be examined prior to application to the data with
setapply and correct. The solutions for different fields
and/or spectral windows can be interpolated in different ways, with
all solutions stored in the same table.
The only difference between incremental and cumulative calibration
tables is that incremental tables are generated directly from the data
via solve or (in the near future) from other ancilliary data
(e.g. weather information), and cumulative tables are generated from
other cumulative and incremental tables via accumulate. In all
other respects (internal format, application to data via setapply and correct, plotting with plotcal, etc.), they
are the same, and therefore interchangable. Thus, accumulate and
cumulative calibration tables need only be used when circumstances
require it.
The accumulate function represents a generalization on the
classic AIPS CLCAL model of cumulative calibration in that its
application is not limited to accumulation of ``G'' solutions (SN/CL
tables classic AIPS are the analog of ``G'' (and, implicitly, ``T'')
in aips++). In principle, any basic calibration type can be
accumulated (onto itself), as long as the result of the accumulation
(matrix product) is of the same type. This is true of all the basic
types, except ``D''. Accumulation is currently supported for ``B'',
``G'', and ``T'', and, in future, ``F'' (ionospheric Faraday
rotation), ``J'' (generic full-polarization calibration),
fringe-fitting, and perhaps others. Accumulation of certain
specialized types (e.g., ``GSPLINE'', ``TOPAC'', etc.) onto the basic
types will be supported in the near future. The treatment of various
calibration from ancilliary data (e.g., system temperatures, weather
data, WVR, etc.), as they become available, will also make use of accumulate to achieve the net calibration.
Note that accumulation only makes sense if treatment of a uniquely
incremental solution is required (as described above), or if a careful
interpolation or sampling of a solution is desired. In all other
cases, re-solving for the type in question will suffice to form
the net calibration of that type. For example, the product of
an existing ``G'' solution and an amplitude and phase ``G'' self-cal
(solved with the existing solution applied), is equivalent to full
amplitude and phase ``G'' selfcal (with no prior solution applied),
as long as the timescale of this solution is at least as short as
that of the existing solution.
Use of accumulate is straightforward:
The tablein parameter is used to specify the existing cumulative
calibration table to which an incremental table is to be applied.
Initially, no such table exists, and accumulate will generate
one from scratch (on-the-fly), using the timescale (in seconds)
specified by the parameter t. These nominal solutions will
be unit-amplitude, zero-phase (i.e., unit matrix) calibration,
ready to be adjusted by accumulation. When t is negative (the
default), the table name specified in tablein must exist and
will be used.
The incrtable parameter is used to specify the incremental table
that should be applied to tablein. The calibration type of
incrtable sets the type assumed in the operation, so tablein must be of the same type. If it is not, accumulate
will exit with an error message. (Certain combinations of types
and subtypes will be supported by accumulate in the future.)
The tableout parameter is used to specify the name of the output
table to write. If un-specified (or ``''), then tablein will be
overwritten. Use this feature with care, since an error here will
require building up the cumulative table from the most recent distinct
version (if any).
The field parameter specifies those field names in tablein
to which the incremental solution should be applied. The solutions for
other fields will be passed to tableout unaltered. If the cumulative
table was created from scratch in this run of accumulate, then these
solutions will be unit-amplitude, zero-phase, as described above.
The calfield parameter is used to specify the fields to select
from incrtable to use when applying to tablein. Together,
use of field and calfield permit completely flexible
combinations of calibration accumulation with respect to fields.
Multiple runs of accumulate can be used to generate a single
table with many combinations. In future, a ``self'' mode will be
enabled that will simplify the accumulation of field-specific
solutions.
The interp parameter is used to specify the interpolation type
to use on the incremental solutions, as in setapply. The
currently available interpolation types are ``nearest'', ``linear'',
and ``aipslin''. See the setapply URM documentation for more
details.
Pending improvements:
- Implement a ``self'' mode (independent of interpolation type),
to simplify or eliminate use of the field and calfield
parameters in some contexts (e.g., self-cal)
- Provide spwmap parameter to enable transfer of solutions
among spectral windows, as in setapply
- More interpolation modes, e.g., ``cubic'', and interpolation
timescale (timerange to permit interpolation)
- Handle propogation (or not) of bad/flagged solutions
- Support of specialized types (e.g., TOPAC) onto the basic
types
- Smoothing (probably a separate function)
Example
c:=calibrater('ap366.sim');
# obtain G solutions from calibrator
c.setdata(msselect='FIELD_ID IN [9,11]');
c.setsolve(type='G',table='cal.G0',t=300);
c.solve()
# obtain proper flux density scale
c.fluxscale (tablein='cal.G0', tableout='cal.G1',
reference='1328+307', transfer="0917+624");
# generate cumulative table for target source on 20s timescale
c.accumulate(tablein='',incrtable='cal.G1',tableout='cal.cG0',
field='0957+561',calfield='0917+624',
interp='linear',t=20);
# apply this calibration to target
c.setdata(msselect='FIELD_ID==10');
c.setapply(type='G',table='cal.cG0',interp='linear')
c.correct();
# (image target with imager tool)
# phase-selfcal target on 60s timescale
c.setdata(msselect='FIELD_ID==10');
c.setapply(type='G',table='cal.cG0',interp='linear')
c.setsolve(type='G',table='cal.G2',t=60,phaseonly=T);
c.solve();
# accumulate new solution onto existing one
c.accumulate(tablein='cal.cG0',incrtable='cal.G2',tableout='cal.cG1',
field='0957+561',calfield='0957+561',
interp='linear');
# apply new cumulative solution to data
c.setapply(type='G',table='cal.cG1',interp='linear')
c.correct();
# (another round of imaging, etc.)
c.done();
Next: calibrater.posangcal - Function
Up: calibrater - Tool
Previous: calibrater.fluxscale - Function
 
Contents
 
Index
Please send questions or comments about AIPS++ to aips2-request@nrao.edu.
Copyright © 1995-2000 Associated Universities Inc.,
Washington, D.C.
Return to AIPS++ Home Page
2006-10-15