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::FluxCalcVQS casa::FluxStdSrcs casa::FluxStdPerleyButler2010 casa::FluxStdPerleyButler2013 casa::FluxStdPerleyTaylor99 casa::NSTDS::FluxStdPerleyButler2010 casa::NSTDS::FluxStdPerleyTaylor99 casa::NSTDS::FluxStdStevensReynolds2016

List of all members.

Public Member Functions

 FluxCalcLogFreqBrokenPolynomial ()
template<Int lford1, Int lford2>
void fill_lohi_coeffs (const RigidVector< Float, lford1 > &lorv, const MFrequency &break_freq, const RigidVector< Float, lford2 > &hirv)
virtual Bool operator() (Flux< Double > &value, Flux< Double > &error, const MFrequency &mfreq, const Bool updatecoeffs)
 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< Float > low_coeffs_p
Vector< Float > high_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 174 of file FluxCalcLogFreqPolynomial.h.


Constructor & Destructor Documentation

casa::FluxCalcLogFreqBrokenPolynomial::FluxCalcLogFreqBrokenPolynomial (  ) 

Member Function Documentation

template<Int lford1, Int lford2>
void casa::FluxCalcLogFreqBrokenPolynomial::fill_lohi_coeffs ( const RigidVector< Float, lford1 > &  lorv,
const MFrequency &  break_freq,
const RigidVector< Float, lford2 > &  hirv 
) [inline]
virtual Bool casa::FluxCalcLogFreqBrokenPolynomial::operator() ( Flux< Double > &  value,
Flux< Double > &  error,
const MFrequency &  mfreq,
const Bool  updatecoeffs 
) [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. Set updatecoeffs = True if the source considered to be time variable.

Reimplemented from casa::FluxCalcLogFreqPolynomial.


Member Data Documentation

Definition at line 186 of file FluxCalcLogFreqPolynomial.h.

Definition at line 189 of file FluxCalcLogFreqPolynomial.h.

Definition at line 187 of file FluxCalcLogFreqPolynomial.h.

Definition at line 188 of file FluxCalcLogFreqPolynomial.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1