Line data Source code
1 : //# BJonesMCol.cc: Implementation of BJonesMCol.h
2 : //# Copyright (C) 1996,1997,1998,2001,2002,2003
3 : //# Associated Universities, Inc. Washington DC, USA.
4 : //#
5 : //# This library is free software; you can redistribute it and/or modify it
6 : //# under the terms of the GNU Library General Public License as published by
7 : //# the Free Software Foundation; either version 2 of the License, or (at your
8 : //# option) any later version.
9 : //#
10 : //# This library is distributed in the hope that it will be useful, but WITHOUT
11 : //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 : //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 : //# License for more details.
14 : //#
15 : //# You should have received a copy of the GNU Library General Public License
16 : //# along with this library; if not, write to the Free Software Foundation,
17 : //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18 : //#
19 : //# Correspondence concerning AIPS++ should be addressed as follows:
20 : //# Internet email: aips2-request@nrao.edu.
21 : //# Postal address: AIPS++ Project Office
22 : //# National Radio Astronomy Observatory
23 : //# 520 Edgemont Road
24 : //# Charlottesville, VA 22903-2475 USA
25 : //#
26 : //# $Id$
27 : //----------------------------------------------------------------------------
28 :
29 : #include <synthesis/CalTables/BJonesMCol.h>
30 :
31 : using namespace casacore;
32 : namespace casa { //# NAMESPACE CASA - BEGIN
33 :
34 : //----------------------------------------------------------------------------
35 :
36 0 : ROBJonesMCol::ROBJonesMCol (const BJonesTable& bjTable) :
37 0 : ROSolvableVisJonesMCol (bjTable)
38 : {
39 : // Construct from a calibration table
40 : // Input:
41 : // bjTable const BJonesTable& BJones calibration table
42 : // Output to private data:
43 : // ROSolvableVisJonesMCol ROSolvableVisJonesMCol Read-only SVJ cal
44 : // main col
45 0 : };
46 :
47 : //----------------------------------------------------------------------------
48 :
49 0 : BJonesMCol::BJonesMCol (BJonesTable& bjTable) :
50 0 : SolvableVisJonesMCol (bjTable)
51 : {
52 : // Construct from a calibration table
53 : // Input:
54 : // bjTable BJonesTable& BJones calibration table
55 : // Output to private data:
56 : // SolvableVisJonesMCol SolvableVisJonesMCol Read-write SVJ cal main col
57 0 : };
58 :
59 : //----------------------------------------------------------------------------
60 :
61 0 : ROBJonesPolyMCol::ROBJonesPolyMCol (const BJonesPolyTable& bjpTable) :
62 0 : ROBJonesMCol (bjpTable)
63 : {
64 : // Construct from a calibration table
65 : // Input:
66 : // bjpTable const BJonesPolyTable& BJonesPoly calibration table
67 : // Output to private data:
68 : // ROBJonesMCol ROBJonesMCol Read-only BJones cal main col
69 : // polyType_p ROScalarCol<String> Polynomial type
70 : // polyMode_p ROScalarCol<String> Polynomial mode (e.g. A&P)
71 : // scaleFactor_p ROScalarCol<Complex> Polynomial scale factor
72 : // validDomain_p ROArrayCol<Double> Valid domain [x_0, x_1]
73 : // nPolyAmp_p ROScalarCol<Int> Polynomial degree (amplitude)
74 : // nPolyPhase_p ROScalarCol<Int> Polynomial degree (phase)
75 : // polyCoeffAmp_p ROArrayCol<Double> Polynomial coeff. (amplitude)
76 : // polyCoeffPhase_p ROArrayCol<Double> Polynomial coeff. (phase)
77 : // phaseUnits_p ROScalarCol<String> Phase units
78 : // sideBandRef_p ROScalarCol<Complex> Sideband reference
79 : //
80 : // Attach all column accessors for additional BJonesPoly columns
81 : // (some are optional, depending on polynomial mode)
82 0 : attach (bjpTable, polyType_p, MSC::POLY_TYPE);
83 0 : attach (bjpTable, polyMode_p, MSC::POLY_MODE);
84 0 : attach (bjpTable, scaleFactor_p, MSC::SCALE_FACTOR);
85 0 : attach (bjpTable, validDomain_p, MSC::VALID_DOMAIN, true);
86 0 : attach (bjpTable, nPolyAmp_p, MSC::N_POLY_AMP, true);
87 0 : attach (bjpTable, nPolyPhase_p, MSC::N_POLY_PHASE, true);
88 0 : attach (bjpTable, polyCoeffAmp_p, MSC::POLY_COEFF_AMP, true);
89 0 : attach (bjpTable, polyCoeffPhase_p, MSC::POLY_COEFF_PHASE, true);
90 0 : attach (bjpTable, phaseUnits_p, MSC::PHASE_UNITS, true);
91 0 : attach (bjpTable, sideBandRef_p, MSC::SIDEBAND_REF);
92 0 : };
93 :
94 : //----------------------------------------------------------------------------
95 :
96 0 : BJonesPolyMCol::BJonesPolyMCol (BJonesPolyTable& bjpTable) :
97 0 : BJonesMCol (bjpTable)
98 : {
99 : // Construct from a calibration table
100 : // Input:
101 : // bjpTable BJonesPolyTable& BJonesPoly calibration table
102 : // Output to private data:
103 : // BJonesMCol BJonesMCol Read-write BJones cal main col
104 : // polyType_p ScalarCol<String> Polynomial type
105 : // polyMode_p ScalarCol<String> Polynomial mode (e.g. A&P)
106 : // scaleFactor_p ScalarCol<Complex> Polynomical scale factor
107 : // validDomain_p ArrayCol<Double> Valid domain [x_0, x_1]
108 : // nPolyAmp_p ScalarCol<Int> Polynomial degree (amplitude)
109 : // nPolyPhase_p ScalarCol<Int> Polynomial degree (phase)
110 : // polyCoeffAmp_p ArrayCol<Double> Polynomial coeff. (amplitude)
111 : // polyCoeffPhase_p ArrayCol<Double> Polynomial coeff. (phase)
112 : // phaseUnits_p ScalarCol<String> Phase units
113 : // sideBandRef_p ScalarCol<Complex> Sideband reference
114 : //
115 : // Attach all column accessors for additional BJonesPoly columns
116 : // (some are optional, depending on polynomial mode)
117 0 : attach (bjpTable, polyType_p, MSC::POLY_TYPE);
118 0 : attach (bjpTable, polyMode_p, MSC::POLY_MODE);
119 0 : attach (bjpTable, scaleFactor_p, MSC::SCALE_FACTOR);
120 0 : attach (bjpTable, validDomain_p, MSC::VALID_DOMAIN);
121 0 : attach (bjpTable, nPolyAmp_p, MSC::N_POLY_AMP, true);
122 0 : attach (bjpTable, nPolyPhase_p, MSC::N_POLY_PHASE, true);
123 0 : attach (bjpTable, polyCoeffAmp_p, MSC::POLY_COEFF_AMP, true);
124 0 : attach (bjpTable, polyCoeffPhase_p, MSC::POLY_COEFF_PHASE, true);
125 0 : attach (bjpTable, phaseUnits_p, MSC::PHASE_UNITS, true);
126 0 : attach (bjpTable, sideBandRef_p, MSC::SIDEBAND_REF);
127 0 : };
128 :
129 : //----------------------------------------------------------------------------
130 :
131 :
132 : } //# NAMESPACE CASA - END
133 :
|