casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Attributes
casa::FluxCalcLogFreqBrokenPolynomial Class Reference

FluxCalcLogFreqBrokenPolynomial: Implementation base class for flux standards which are broken polynomials of log10(frequency). More...

#include <FluxCalcLogFreqPolynomial.h>

Inheritance diagram for casa::FluxCalcLogFreqBrokenPolynomial:
casa::FluxCalcLogFreqPolynomial casa::FluxCalcQS casa::FluxStdPerleyButler2010 casa::FluxStdPerleyButler2013 casa::FluxStdPerleyTaylor99

List of all members.

Public Member Functions

 FluxCalcLogFreqBrokenPolynomial ()
template<Int lford>
void fill_lohi_coeffs (const RigidVector< Float, lford > &lorv, const MFrequency &break_freq, const RigidVector< Float, lford > &hirv)
virtual Bool operator() (Flux< Double > &value, Flux< Double > &error, const MFrequency &mfreq)
 Set the log10(frequency) polynomial coefficients for calculating the flux density and its uncertainty, and the unit (typically "MHz" or "GHz") that the coefficients assume.

Private Attributes

MFrequency break_freq_p
Bool in_low_state_p
Vector< Floatlow_coeffs_p
Vector< Floathigh_coeffs_p

Detailed Description

FluxCalcLogFreqBrokenPolynomial: Implementation base class for flux standards which are broken polynomials of log10(frequency).

Intended use:

Public interface

Prerequisite

Etymology

From FluxCalcLogFreqPolynomial and "broken".

Synopsis

The FluxCalcLogFreqBrokenPolynomial class extends FluxCalcLogFreqPolynomial to allow one set of coefficients to be used below a certain frequency (the break frequency) and another above it. Ideally the sets should mesh well enough to make the resulting function at least roughly continuous.

Example

Motivation

Some of the flux classes use a broken polynomial for 1934-638, and some do not.

To Do

Definition at line 170 of file FluxCalcLogFreqPolynomial.h.


Constructor & Destructor Documentation


Member Function Documentation

template<Int lford>
void casa::FluxCalcLogFreqBrokenPolynomial::fill_lohi_coeffs ( const RigidVector< Float, lford > &  lorv,
const MFrequency break_freq,
const RigidVector< Float, lford > &  hirv 
)
virtual Bool casa::FluxCalcLogFreqBrokenPolynomial::operator() ( Flux< Double > &  value,
Flux< Double > &  error,
const MFrequency mfreq 
) [virtual]

Set the log10(frequency) polynomial coefficients for calculating the flux density and its uncertainty, and the unit (typically "MHz" or "GHz") that the coefficients assume.

Note that errcoeffs does not have to have the same number of terms as lfcoeffs, or any terms at all, and that each term in its polynomial is (errcoeff[order] * pow(log10(freq), order))**2. FluxCalcLogFreqPolynomial(const String& freqUnit, const Vector<Double>& lfcoeffs, const Vector<Double>& errcoeffs);

Set value and error with the expected flux density and its uncertainty (0.0 if unknown) at mfreq.

Reimplemented from casa::FluxCalcLogFreqPolynomial.


Member Data Documentation

Definition at line 182 of file FluxCalcLogFreqPolynomial.h.

Definition at line 185 of file FluxCalcLogFreqPolynomial.h.

Definition at line 183 of file FluxCalcLogFreqPolynomial.h.

Definition at line 184 of file FluxCalcLogFreqPolynomial.h.


The documentation for this class was generated from the following file: