FluxStdsQS2.h

Go to the documentation of this file.
00001 //# FluxStdsQS2.h: Client class declarations for flux standards 
00002 //# some of which support time-variable sources.
00003 //
00004 //# Copyright (C) 2013
00005 //# Associated Universities, Inc. Washington DC, USA.
00006 //#
00007 //# This library is free software; you can redistribute it and/or modify it
00008 //# under the terms of the GNU Library General Public License as published by
00009 //# the Free Software Foundation; either version 2 of the License, or (at your
00010 //# option) any later version.
00011 //#
00012 //# This library is distributed in the hope that it will be useful, but WITHOUT
00013 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00014 //# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
00015 //# License for more details.
00016 //#
00017 //# You should have received a copy of the GNU Library General Public License
00018 //# along with this library; if not, write to the Free Software Foundation,
00019 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
00020 //#
00021 //# Correspondence concerning AIPS++ should be adressed as follows:
00022 //#        Internet email: aips2-request@nrao.edu.
00023 //#        Postal address: AIPS++ Project Office
00024 //#                        National Radio Astronomy Observatory
00025 //#                        520 Edgemont Road
00026 //#                        Charlottesville, VA 22903-2475 USA
00027 //#
00028 //#
00029 #ifndef COMPONENTS_FLUXSTDSQS2_H
00030 #define COMPONENTS_FLUXSTDSQS2_H
00031 
00032 #include <components/ComponentModels/FluxCalcLogFreqPolynomial.h>
00033 #include <components/ComponentModels/FluxCalcVQS.h>
00034 
00035 namespace casa { //# NAMESPACE CASA - BEGIN
00036 namespace NSTDS { //# NAMESPACE NSTDS "new standards"  - BEGIN
00037                   //#   once old code (FluxCalcQS etc) deleted this can be
00038                   //#   removed.
00039 // <summary> 
00040 // FluxStdBaars: The Baars flux standard.
00041 // </summary>
00042 
00043 // <use visibility=export>
00044 
00045 // <reviewed reviewer="" date="" tests="" demos="">
00046 
00047 // <prerequisite>
00048 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00049 // <li><linkto class="FluxCalcLogFreqPolynomial">FluxCalcLogFreqPolynomial</linkto> module
00050 // </prerequisite>
00051 //
00052 // <etymology>
00053 // From "flux density", "standard", and "Baars".
00054 // </etymology>
00055 //
00056 // <synopsis>
00057 // This specializes FluxCalcLogFreqPolynomial with the Baars coefficients and
00058 // list of recognized sources.
00059 // </synopsis>
00060 //
00061 // <example>
00062 // <srcblock>
00063 // </srcblock>
00064 // </example>
00065 //
00066 // <motivation>
00067 // Support flux density calibration.
00068 // </motivation>
00069 
00070 class FluxStdBaars : public virtual FluxCalcVQS,
00071         private FluxCalcLogFreqPolynomial 
00072 {
00073 private:
00074   virtual Bool setSourceCoeffs();
00075 };
00076 
00077 // <summary> 
00078 // FluxStdPerley90: The Perley90 flux standard.
00079 // </summary>
00080 //
00081 // <use visibility=export>
00082 //
00083 // <reviewed reviewer="" date="" tests="" demos="">
00084 //
00085 // <prerequisite>
00086 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00087 // <li><linkto class="FluxCalcLogFreqPolynomial">FluxCalcLogFreqPolynomial</linkto> module
00088 // </prerequisite>
00089 //
00090 // <etymology>
00091 // From "flux density", "standard", "Perley", and "1990".
00092 // </etymology>
00093 //
00094 // <synopsis>
00095 // This specializes FluxCalcLogFreqPolynomial with the Perley_90 coefficients and
00096 // list of recognized sources.
00097 // </synopsis>
00098 //
00099 // <example>
00100 // <srcblock>
00101 // </srcblock>
00102 // </example>
00103 //
00104 // <motivation>
00105 // Support flux density calibration.
00106 // </motivation>
00107 class FluxStdPerley90 : public virtual FluxCalcVQS,
00108         private FluxCalcLogFreqPolynomial 
00109 {
00110 private:
00111   virtual Bool setSourceCoeffs();
00112 };
00113 
00114 // <summary> 
00115 // FluxStdPerleyTaylor95: The PerleyTaylor95 flux standard.
00116 // </summary>
00117 //
00118 // <use visibility=export>
00119 //
00120 // <reviewed reviewer="" date="" tests="" demos="">
00121 //
00122 // <prerequisite>
00123 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00124 // <li><linkto class="FluxCalcLogFreqPolynomial">FluxCalcLogFreqPolynomial</linkto> module
00125 // </prerequisite>
00126 //
00127 // <etymology>
00128 // From "flux density", "standard", "Perley", "Taylor", and "1995".
00129 // </etymology>
00130 //
00131 // <synopsis>
00132 // This specializes FluxCalcLogFreqPolynomial with the PerleyTaylor95 coefficients and
00133 // list of recognized sources.
00134 // </synopsis>
00135 //
00136 // <example>
00137 // <srcblock>
00138 // </srcblock>
00139 // </example>
00140 //
00141 // <motivation>
00142 // Support flux density calibration.
00143 // </motivation>
00144 class FluxStdPerleyTaylor95 : public virtual FluxCalcVQS,
00145         private FluxCalcLogFreqPolynomial 
00146 {
00147 private:
00148   virtual Bool setSourceCoeffs();
00149 };
00150 
00151 // <summary> 
00152 // FluxStdPerleyTaylor99: The PerleyTaylor99 flux standard.
00153 // </summary>
00154 //
00155 // <use visibility=export>
00156 //
00157 // <reviewed reviewer="" date="" tests="" demos="">
00158 //
00159 // <prerequisite>
00160 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00161 // <li><linkto class="FluxCalcLogFreqBrokenPolynomial">FluxCalcLogFreqBrokenPolynomial</linkto> module
00162 // </prerequisite>
00163 //
00164 // <etymology>
00165 // From "flux density", "standard", "Perley", "Taylor", and "1999".
00166 // </etymology>
00167 //
00168 // <synopsis>
00169 // This specializes FluxCalcLogFreqBrokenPolynomial with the PerleyTaylor99 coefficients and
00170 // list of recognized sources.
00171 // </synopsis>
00172 //
00173 // <example>
00174 // <srcblock>
00175 // </srcblock>
00176 // </example>
00177 //
00178 // <motivation>
00179 // Support flux density calibration.
00180 // </motivation>
00181 class FluxStdPerleyTaylor99 : public virtual FluxCalcVQS,
00182         private FluxCalcLogFreqBrokenPolynomial 
00183 {
00184 private:
00185   virtual Bool setSourceCoeffs();
00186 };
00187 
00188 // <summary> 
00189 // FluxStdPerleyButler2010: The PerleyButler2010 flux standard.
00190 // </summary>
00191 //
00192 // <use visibility=export>
00193 //
00194 // <reviewed reviewer="" date="" tests="" demos="">
00195 //
00196 // <prerequisite>
00197 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00198 // <li><linkto class="FluxCalcLogFreqBrokenPolynomial">FluxCalcLogFreqBrokenPolynomial</linkto> module
00199 // </prerequisite>
00200 //
00201 // <etymology>
00202 // From "flux density", "standard", "Perley", "Butler", and "2010".
00203 // </etymology>
00204 //
00205 // <synopsis>
00206 // This specializes FluxCalcLogFreqBrokenPolynomial with the PerleyButler2010 coefficients and
00207 // list of recognized sources.
00208 // </synopsis>
00209 //
00210 // <example>
00211 // <srcblock>
00212 // </srcblock>
00213 // </example>
00214 //
00215 // <motivation>
00216 // Support flux density calibration.
00217 // </motivation>
00218 class FluxStdPerleyButler2010 : public virtual FluxCalcVQS,
00219                                 private FluxCalcLogFreqBrokenPolynomial 
00220 {
00221 private:
00222   virtual Bool setSourceCoeffs();
00223 };
00224 // <summary>
00225 // FluxStdPerleyButler2013: The PerleyButler2013 flux standard.
00226 // </summary>
00227 //
00228 // <use visibility=export>
00229 //
00230 // <reviewed reviewer="" date="" tests="" demos="">
00231 //
00232 // <prerequisite>
00233 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00234 // <li><linkto class="FluxCalcLogFreqBrokenPolynomial">FluxCalcLogFreqBrokenPolynomial</linkto> module
00235 // </prerequisite>
00236 //
00237 // <etymology>
00238 // From "flux density", "standard", "Perley", "Butler", and "2013".
00239 // </etymology>
00240 //
00241 // <synopsis>
00242 // This specializes FluxCalcLogFreqBrokenPolynomial with the PerleyButler2013 coefficients and
00243 // list of recognized sources. The coeffients are stored in a table along with epoch information as
00244 // some of the calibrators are varible enough to be interpolated in time. 
00245 // </synopsis>
00246 //
00247 // <example>
00248 // <srcblock>
00249 // </srcblock>
00250 // </example>
00251 //
00252 // <motivation>
00253 // Support flux density calibration.
00254 // </motivation>
00255 class FluxStdPerleyButler2013 : public virtual FluxCalcVQS,
00256                                 private FluxCalcLogFreqPolynomial
00257 {
00258 /***
00259 public:
00260 Bool operator()(Vector<Flux<Double> >& values,
00261                   Vector<Flux<Double> >& errors,
00262                   const Vector<MFrequency>& mfreqs,
00263                   const MEpoch& mtime);
00264 **/ 
00265 private:
00266   virtual Bool setSourceCoeffs();
00267 };
00268 
00269 // <summary>
00270 // FluxStdScaifeHeald2012: The Scaife & Heald (2012) flux standard.
00271 // </summary>
00272 //
00273 // <use visibility=export>
00274 //
00275 // <reviewed reviewer="" date="" tests="" demos="">
00276 //
00277 // <prerequisite>
00278 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00279 // <li><linkto class="FluxCalcLogFreqPolynomialSH">FluxCalcLogFreqPolynomialSH</linkto> module
00280 // </prerequisite>
00281 //
00282 // <etymology>
00283 // From "flux density", "standard", "Scaife", "Heald", and "2012".
00284 // </etymology>
00285 //
00286 // <synopsis>
00287 // This specializes FluxCalcLogFreqPolynomialSH with the Scaife & Heald (2012)
00288 // coefficients and list of recognized sources.
00289 // </synopsis>
00290 //
00291 // <example>
00292 // <srcblock>
00293 // </srcblock>
00294 // </example>
00295 //
00296 // <motivation>
00297 // Support flux density calibration.
00298 // </motivation>
00299 class FluxStdScaifeHeald2012 : public virtual FluxCalcVQS,
00300                                private FluxCalcLogFreqPolynomialSH
00301 {
00302 private:
00303   virtual Bool setSourceCoeffs();
00304 };
00305 
00306 // <summary>
00307 // FluxStdStevensReynolds: The StevensReynolds2016 flux standard.
00308 // </summary>
00309 //
00310 // <use visibility=export>
00311 //
00312 // <reviewed reviewer="" date="" tests="" demos="">
00313 //
00314 // <prerequisite>
00315 // <li><linkto class="FluxStandard">FluxStandard</linkto> module
00316 // <li><linkto class="FluxCalcLogFreqBrokenPolynomial">FluxCalcLogFreqBrokenPolynomial</linkto> module
00317 // </prerequisite>
00318 //
00319 // <etymology>
00320 // From "flux density", "standard", "Stevens", "Reynolds", and "2016".
00321 // </etymology>
00322 //
00323 // <synopsis>
00324 // This specializes FluxCalcLogFreqBrokenPolynomial with the StevensReynolds
00325 // coefficients and list of recognized sources.
00326 // </synopsis>
00327 //
00328 // <example>
00329 // <srcblock>
00330 // </srcblock>
00331 // </example>
00332 //
00333 // <motivation>
00334 // Support flux density calibration.
00335 // </motivation>
00336 class FluxStdStevensReynolds2016 : public virtual FluxCalcVQS,
00337                                   private FluxCalcLogFreqBrokenPolynomial
00338 {
00339 private:
00340   virtual Bool setSourceCoeffs();
00341 };
00342 
00343 } //# NAMESPACE NSTDS -END
00344 } //# NAMESPACE CASA - END
00345 
00346 #endif /* COMPONENTS_FLUXSTDSQS2_H */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1