casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
casa::FluxStandard Class Reference

FluxStandard: Compute flux densities for standard reference sources. More...

#include <FluxStandard.h>

Public Types

enum  FluxScale {
  PERLEY_90,
  PERLEY_TAYLOR_95,
  PERLEY_TAYLOR_99,
  BAARS,
  PERLEY_BUTLER_2010,
  PERLEY_BUTLER_2013,
  SCAIFE_HEALD_2012,
  STEVENS_REYNOLDS_2016,
  PERLEY_BUTLER_2017,
  HAS_RESOLUTION_INFO,
  SS_JPL_BUTLER,
  NUMBER_STANDARDS
}
 Flux scale types. More...
 

Public Member Functions

 FluxStandard (const FluxStandard::FluxScale scale=FluxStandard::PERLEY_TAYLOR_99)
 Default constructor, and destructor. More...
 
 ~FluxStandard ()
 
casacore::Bool compute (const casacore::String &sourceName, const casacore::MDirection &sourceDir, const casacore::MFrequency &mfreq, const casacore::MEpoch &mtime, Flux< casacore::Double > &value, Flux< casacore::Double > &error)
 Compute the flux density for a specified source at a specified frequency. More...
 
casacore::Bool compute (const casacore::String &sourceName, const casacore::MDirection &sourceDir, const casacore::Vector< casacore::MFrequency > &mfreqs, const casacore::MEpoch &mtime, casacore::Vector< Flux< casacore::Double > > &values, casacore::Vector< Flux< casacore::Double > > &errors, const casacore::Bool verbose=true)
 Compute the flux densities and their uncertainties for a specified source at a set of specified frequencies. More...
 
casacore::Bool compute (const casacore::String &sourceName, const casacore::MDirection &sourceDir, const casacore::Vector< casacore::Vector< casacore::MFrequency > > &mfreqs, const casacore::MEpoch &mtime, casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &values, casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &errors)
 Compute the flux densities and their uncertainties for a specified source for a set of sets of specified frequencies, i.e. More...
 
casacore::Bool computeCL (const casacore::String &sourceName, const casacore::Vector< casacore::Vector< casacore::MFrequency > > &mfreqs, const casacore::MEpoch &mtime, const casacore::MDirection &position, casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &values, casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &errors, casacore::Vector< casacore::String > &clnames, const casacore::String &prefix="")
 Like compute, but it also saves a set of ComponentLists for the source to disk and puts the paths (sourceName_mfreq_mtime.cl) in clnames, making it suitable for resolved sources. More...
 
void setInterpMethod (const casacore::String &interpmethod)
 set interpolation method for a time-variable source More...
 

Static Public Member Functions

static casacore::String makeComponentList (const casacore::String &sourceName, const casacore::MFrequency &mfreq, const casacore::MEpoch &mtime, const Flux< casacore::Double > &fluxval, const ComponentShape &cmp, const SpectralModel &spectrum, const casacore::String &prefix="")
 Take a component cmp and save it to a ComponentList on disk, returning the pathname. More...
 
static casacore::String makeComponentList (const casacore::String &sourceName, const casacore::Vector< casacore::MFrequency > &mfreqs, const casacore::MEpoch &mtime, const casacore::Vector< Flux< casacore::Double > > &values, const ComponentShape &cmp, const casacore::String &prefix="")
 Variation of the above that will fill a TabularSpectrum with mfreqs and values if appropriate. More...
 
static casacore::Bool matchStandard (const casacore::String &name, FluxStandard::FluxScale &stdEnum, casacore::String &stdName)
 Decode a string representation of the standard or catalog name. More...
 
static casacore::String standardName (const FluxStandard::FluxScale &stdEnum)
 Return a standard string description for each scale or catalog. More...
 

Private Attributes

FluxStandard::FluxScale itsFluxScale
 Flux scale in use. More...
 
casacore::Bool has_direction_p
 
casacore::MDirection direction_p
 
casacore::String interpmethod_p
 

Detailed Description

FluxStandard: Compute flux densities for standard reference sources.

Intended use:

Public interface

Prerequisite

Etymology

From "flux density" and "standard".

Synopsis

The FluxStandard class provides a means to compute total flux densities for specified sources on a standard flux density scale, such as that established by Baars or Perley and Taylor.

Example

Motivation

Encapsulate information on standard flux density computation in one class.

To Do

Definition at line 84 of file FluxStandard.h.

Member Enumeration Documentation

Flux scale types.

Standards which do not include resolution info must come before HAS_RESOLUTION_INFO, and those with it must come after.

Enumerator
PERLEY_90 

Perley (1990); plus Reynolds (1934-638; 7/94); Baars (3C138)

PERLEY_TAYLOR_95 

Perley and Taylor (1995.2); plus Reynolds (1934-638; 7/94)

PERLEY_TAYLOR_99 

Perley and Taylor (1999.2); plus Reynolds (1934-638; 7/94)

BAARS 

Baars scale Baars J.

W. M., Genzel R., Pauliny-Toth I. I. K., et al., 1977, A&A, 61, 99 http://cdsads.u-strasbg.fr/abs/1977A%26A....61...99B

PERLEY_BUTLER_2010 

Perley-Butler 2010 Scale (using VLA [not EVLA!] data)

PERLEY_BUTLER_2013 

Perley-Butler 2013 (include time variable sources)

SCAIFE_HEALD_2012 

Scaife & Heald 2012MNRAS.423L..30S broadband low-frequency flux scale for frequencies <~500 MHz.

STEVENS_REYNOLDS_2016 

Stevens & Reynolds 2016, A combination of the Reynolds low frequency flux scale with the Stevens high frequency flux scale for 1934-638 described in Partridge et al (2016), ApJ 821,1.

PERLEY_BUTLER_2017 

Perley-Butler 2017 (inculde time variable sources from Perley-Butler 2013)

HAS_RESOLUTION_INFO 
SS_JPL_BUTLER 

Estimate the flux density for a Solar System object using a JPL Horizons ephemeris/data page and model provided by Bryan Butler.

NUMBER_STANDARDS 

The number of standards in this enumerator.

Definition at line 90 of file FluxStandard.h.

Constructor & Destructor Documentation

casa::FluxStandard::FluxStandard ( const FluxStandard::FluxScale  scale = FluxStandard::PERLEY_TAYLOR_99)

Default constructor, and destructor.

casa::FluxStandard::~FluxStandard ( )

Member Function Documentation

casacore::Bool casa::FluxStandard::compute ( const casacore::String sourceName,
const casacore::MDirection sourceDir,
const casacore::MFrequency mfreq,
const casacore::MEpoch mtime,
Flux< casacore::Double > &  value,
Flux< casacore::Double > &  error 
)

Compute the flux density for a specified source at a specified frequency.

casacore::Bool casa::FluxStandard::compute ( const casacore::String sourceName,
const casacore::MDirection sourceDir,
const casacore::Vector< casacore::MFrequency > &  mfreqs,
const casacore::MEpoch mtime,
casacore::Vector< Flux< casacore::Double > > &  values,
casacore::Vector< Flux< casacore::Double > > &  errors,
const casacore::Bool  verbose = true 
)

Compute the flux densities and their uncertainties for a specified source at a set of specified frequencies.

casacore::Bool casa::FluxStandard::compute ( const casacore::String sourceName,
const casacore::MDirection sourceDir,
const casacore::Vector< casacore::Vector< casacore::MFrequency > > &  mfreqs,
const casacore::MEpoch mtime,
casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &  values,
casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &  errors 
)

Compute the flux densities and their uncertainties for a specified source for a set of sets of specified frequencies, i.e.

mfreqs[spw] is a set of frequencies for channels in spectral window spw, and values and errors are arranged the same way.

casacore::Bool casa::FluxStandard::computeCL ( const casacore::String sourceName,
const casacore::Vector< casacore::Vector< casacore::MFrequency > > &  mfreqs,
const casacore::MEpoch mtime,
const casacore::MDirection position,
casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &  values,
casacore::Vector< casacore::Vector< Flux< casacore::Double > > > &  errors,
casacore::Vector< casacore::String > &  clnames,
const casacore::String prefix = "" 
)

Like compute, but it also saves a set of ComponentLists for the source to disk and puts the paths (sourceName_mfreq_mtime.cl) in clnames, making it suitable for resolved sources.

mtime is ignored for nonvariable objects. Solar System objects are typically resolved and variable! The ComponentList names are formed from prefix, sourceName, the frequencies, and times.

static casacore::String casa::FluxStandard::makeComponentList ( const casacore::String sourceName,
const casacore::MFrequency mfreq,
const casacore::MEpoch mtime,
const Flux< casacore::Double > &  fluxval,
const ComponentShape cmp,
const SpectralModel spectrum,
const casacore::String prefix = "" 
)
static

Take a component cmp and save it to a ComponentList on disk, returning the pathname.

("" if unsuccessful, sourceName_mfreqGHzDateTime.cl otherwise)

This is also used outside of FluxStandard, but it is declared here instead of in ComponentList because it is somewhat specialized, mainly in setting up the pathname. The ComponentList name is formed from prefix, sourceName, mfreq, and mtime.

static casacore::String casa::FluxStandard::makeComponentList ( const casacore::String sourceName,
const casacore::Vector< casacore::MFrequency > &  mfreqs,
const casacore::MEpoch mtime,
const casacore::Vector< Flux< casacore::Double > > &  values,
const ComponentShape cmp,
const casacore::String prefix = "" 
)
static

Variation of the above that will fill a TabularSpectrum with mfreqs and values if appropriate.

static casacore::Bool casa::FluxStandard::matchStandard ( const casacore::String name,
FluxStandard::FluxScale stdEnum,
casacore::String stdName 
)
static

Decode a string representation of the standard or catalog name.

void casa::FluxStandard::setInterpMethod ( const casacore::String interpmethod)

set interpolation method for a time-variable source

static casacore::String casa::FluxStandard::standardName ( const FluxStandard::FluxScale stdEnum)
static

Return a standard string description for each scale or catalog.

Member Data Documentation

casacore::MDirection casa::FluxStandard::direction_p
private

Definition at line 218 of file FluxStandard.h.

casacore::Bool casa::FluxStandard::has_direction_p
private

Definition at line 216 of file FluxStandard.h.

casacore::String casa::FluxStandard::interpmethod_p
private

Definition at line 220 of file FluxStandard.h.

FluxStandard::FluxScale casa::FluxStandard::itsFluxScale
private

Flux scale in use.

Definition at line 214 of file FluxStandard.h.


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