Line data Source code
1 : //# SolvableVJDesc.h: Define the format of SolvableVisJones cal tables 2 : //# Copyright (C) 1996,1997,1998,2001,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 adressed as follows: 20 : //# Internet email: casa-feedback@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 : //# 27 : //# $Id$ 28 : 29 : #ifndef CALIBRATION_SOLVABLEVJDESC_H 30 : #define CALIBRATION_SOLVABLEVJDESC_H 31 : 32 : #include <synthesis/CalTables/TimeVarVJDesc.h> 33 : 34 : namespace casa { //# NAMESPACE CASA - BEGIN 35 : 36 : // <summary> 37 : // SolvableVisJonesDesc: Define the format of SolvableVisJones cal tables 38 : // </summary> 39 : 40 : // <use visibility=export> 41 : 42 : // <reviewed reviewer="" date="" tests="" demos=""> 43 : 44 : // <prerequisite> 45 : // <li> <linkto class="CalTableDesc">CalTableDesc</linkto> module 46 : // <li> <linkto class="VisJonesDesc">VisJonesDesc</linkto> module 47 : // <li> <linkto class="TimeVarVisJonesDesc">TimeVarVisJonesDesc</linkto> module 48 : // 49 : // </prerequisite> 50 : // 51 : // <etymology> 52 : // From "solvable VisJones" and "descriptor". 53 : // </etymology> 54 : // 55 : // <synopsis> 56 : // SolvableVisJonesDesc defines the format of SolvableVisJones calibration 57 : // tables in terms of table descriptors <linkto class="casacore::TableDesc">TableDesc 58 : // </linkto>, as used in the casacore::Table system. The solvable VisJones calibration 59 : // table formats include fit statistics and weights. Specializations for 60 : // GJones, DJones and BJones calibration tables are provided through 61 : // inheritance. At present, this set of classes returns only the default 62 : // table formats. 63 : // </etymology> 64 : // 65 : // <example> 66 : // <srcblock> 67 : // </srcblock> 68 : // </example> 69 : // 70 : // <motivation> 71 : // See CalTableDesc. 72 : // </motivation> 73 : // 74 : // <todo asof="98/01/01"> 75 : // Generate calibration table descriptors from a VisSet or VisBuffer object 76 : // </todo> 77 : 78 : class SolvableVisJonesDesc : public TimeVarVisJonesDesc 79 : { 80 : public: 81 : // Default null constructor, and destructor 82 : SolvableVisJonesDesc(); 83 4 : virtual ~SolvableVisJonesDesc() {}; 84 : 85 : // Construct from the Jones table type 86 : SolvableVisJonesDesc (const casacore::String& type); 87 : 88 : // Return the cal_main table descriptor 89 : virtual casacore::TableDesc calMainDesc(); 90 : 91 : private: 92 : // casacore::Table descriptor for fit statistics and weights 93 : casacore::TableDesc itsFitDesc; 94 : 95 : }; 96 : 97 : // <summary> 98 : // GJonesDesc: Define the format of GJones cal tables 99 : // </summary> 100 : 101 : // <use visibility=export> 102 : 103 : // <reviewed reviewer="" date="" tests="" demos=""> 104 : 105 : // <prerequisite> 106 : //<li><linkto class="CalTableDesc">CalTableDesc</linkto> module 107 : //<li><linkto class="VisJonesDesc">VisJonesDesc</linkto> module 108 : //<li><linkto class="SolvableVisJonesDesc">SolvableVisJonesDesc</linkto> module 109 : // </prerequisite> 110 : // 111 : // <etymology> 112 : // From "GJones" and "descriptor". 113 : // </etymology> 114 : // 115 : // <synopsis> 116 : // GJonesDesc defines the format of GJones calibration tables in terms 117 : // of table descriptors <linkto class="casacore::TableDesc">casacore::TableDesc</linkto>, 118 : // as used in the casacore::Table system. GJones matrices define the electronic 119 : // gain corrections in the Measurement Equation formalism. At present, 120 : // this class returns only the default table formats. 121 : // </etymology> 122 : // 123 : // <example> 124 : // <srcblock> 125 : // </srcblock> 126 : // </example> 127 : // 128 : // <motivation> 129 : // See CalTableDesc. 130 : // </motivation> 131 : // 132 : // <todo asof="98/01/01"> 133 : // Generate calibration table descriptors from a VisSet or VisBuffer object 134 : // </todo> 135 : 136 : class GJonesDesc : public SolvableVisJonesDesc 137 : { 138 : public: 139 : // Default null constructor, and destructor 140 : GJonesDesc(); 141 3 : virtual ~GJonesDesc() {}; 142 : 143 : }; 144 : 145 : // <summary> 146 : // GJonesDelayRateSBDesc: Define the format of GJonesDelayRateSB cal tables 147 : // </summary> 148 : 149 : // <use visibility=export> 150 : 151 : // <reviewed reviewer="" date="" tests="" demos=""> 152 : 153 : // <prerequisite> 154 : //<li><linkto class="CalTableDesc">CalTableDesc</linkto> module 155 : //<li><linkto class="VisJonesDesc">VisJonesDesc</linkto> module 156 : //<li><linkto class="SolvableVisJonesDesc">SolvableVisJonesDesc</linkto> module 157 : //<li><linkto class="GJonesDesc">GJonesDesc</linkto> module 158 : // </prerequisite> 159 : // 160 : // <etymology> 161 : // From "GJones" "delay", "rate", "single-band" and "descriptor". 162 : // </etymology> 163 : // 164 : // <synopsis> 165 : // GJonesDelayRateSBDesc defines the format of GJonesDelayRateSB 166 : // calibration tables in terms of table descriptors 167 : // <linkto class="casacore::TableDesc">casacore::TableDesc</linkto>, 168 : // as used in the casacore::Table system. This class augments the GJones 169 : // class, with several additional columns for parametrized 170 : // fringe-fitting solutions. 171 : // </synopsis> 172 : // 173 : // <example> 174 : // <srcblock> 175 : // </srcblock> 176 : // </example> 177 : // 178 : // <motivation> 179 : // See CalTableDesc. 180 : // </motivation> 181 : // 182 : // <todo asof="01/04/30"> 183 : // Add multi-band and acceleration columns 184 : // </todo> 185 : 186 : class GJonesDelayRateSBDesc : public GJonesDesc 187 : { 188 : public: 189 : // Default null constructor, and destructor 190 : GJonesDelayRateSBDesc(); 191 0 : virtual ~GJonesDelayRateSBDesc() {}; 192 : 193 : // Return the table descriptors for the main calibration table: 194 : virtual casacore::TableDesc calMainDesc(); 195 : }; 196 : 197 : // <summary> 198 : // DJonesDesc: Define the format of DJones cal tables 199 : // </summary> 200 : 201 : // <use visibility=export> 202 : 203 : // <reviewed reviewer="" date="" tests="" demos=""> 204 : 205 : // <prerequisite> 206 : // <li> <linkto class="CalTableDesc">CalTableDesc</linkto> module 207 : // <li> <linkto class="VisJonesDesc">VisJonesDesc</linkto> module 208 : // <li> <linkto class="SolvableVisJonesDesc">SolvableVisJonesDesc</linkto> module 209 : // </prerequisite> 210 : // 211 : // <etymology> 212 : // From "DJones" and "descriptor". 213 : // </etymology> 214 : // 215 : // <synopsis> 216 : // DJonesDesc defines the format of DJones calibration tables in terms 217 : // of table descriptors <linkto class="casacore::TableDesc">casacore::TableDesc</linkto>, 218 : // as used in the casacore::Table system. DJones matrices define the instrumental 219 : // polarization corrections in the Measurement Equation formalism. At 220 : // present, this class returns only the default table formats. 221 : // </etymology> 222 : // 223 : // <example> 224 : // <srcblock> 225 : // </srcblock> 226 : // </example> 227 : // 228 : // <motivation> 229 : // See CalTableDesc. 230 : // </motivation> 231 : // 232 : // <todo asof="98/01/01"> 233 : // Generate calibration table descriptors from a VisSet or VisBuffer object 234 : // </todo> 235 : 236 : class DJonesDesc : public SolvableVisJonesDesc 237 : { 238 : public: 239 : // Default null constructor, and destructor 240 : DJonesDesc(); 241 0 : virtual ~DJonesDesc() {}; 242 : 243 : }; 244 : 245 : // <summary> 246 : // TJonesDesc: Define the format of TJones cal tables 247 : // </summary> 248 : 249 : // <use visibility=export> 250 : 251 : // <reviewed reviewer="" date="" tests="" demos=""> 252 : 253 : // <prerequisite> 254 : //<li><linkto class="CalTableDesc">CalTableDesc</linkto> module 255 : //<li><linkto class="VisJonesDesc">VisJonesDesc</linkto> module 256 : //<li><linkto class="SolvableVisJonesDesc">SolvableVisJonesDesc</linkto> module 257 : // </prerequisite> 258 : // 259 : // <etymology> 260 : // From "TJones" and "descriptor". 261 : // </etymology> 262 : // 263 : // <synopsis> 264 : // TJonesDesc defines the format of TJones calibration tables in terms 265 : // of table descriptors <linkto class="casacore::TableDesc">casacore::TableDesc</linkto>, 266 : // as used in the casacore::Table system. TJones matrices define the atmospheric 267 : // gain corrections in the Measurement Equation formalism. At present, 268 : // this class returns only the default table formats. 269 : // </etymology> 270 : // 271 : // <example> 272 : // <srcblock> 273 : // </srcblock> 274 : // </example> 275 : // 276 : // <motivation> 277 : // See CalTableDesc. 278 : // </motivation> 279 : // 280 : // <todo asof="98/01/01"> 281 : // Generate calibration table descriptors from a VisSet or VisBuffer object 282 : // </todo> 283 : 284 : class TJonesDesc : public SolvableVisJonesDesc 285 : { 286 : public: 287 : // Default null constructor, and destructor 288 : TJonesDesc(); 289 0 : virtual ~TJonesDesc() {}; 290 : 291 : }; 292 : 293 : 294 : 295 : } //# NAMESPACE CASA - END 296 : 297 : #endif 298 : 299 : 300 : 301 : 302 : 303 : 304 :