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

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

#include <FluxStandard.h>

List of all members.

Public Types

enum  FluxScale {
  PERLEY_90,
  PERLEY_TAYLOR_95,
  PERLEY_TAYLOR_99,
  BAARS,
  PERLEY_BUTLER_2010,
  PERLEY_BUTLER_2013,
  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.
 ~FluxStandard ()
Bool compute (const String &sourceName, const MFrequency &mfreq, Flux< Double > &value, Flux< Double > &error)
 Compute the flux density for a specified source at a specified frequency.
Bool compute (const String &sourceName, const Vector< MFrequency > &mfreqs, Vector< Flux< Double > > &values, Vector< Flux< Double > > &errors, const Bool verbose=True)
 Compute the flux densities and their uncertainties for a specified source at a set of specified frequencies.
Bool compute (const String &sourceName, const Vector< Vector< MFrequency > > &mfreqs, Vector< Vector< Flux< Double > > > &values, Vector< Vector< Flux< Double > > > &errors)
 Compute the flux densities and their uncertainties for a specified source for a set of sets of specified frequencies, i.e.
Bool computeCL (const String &sourceName, const Vector< Vector< MFrequency > > &mfreqs, const MEpoch &mtime, const MDirection &position, Vector< Vector< Flux< Double > > > &values, Vector< Vector< Flux< Double > > > &errors, Vector< String > &clnames, const 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.

Static Public Member Functions

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

Private Attributes

FluxStandard::FluxScale itsFluxScale
 Flux scale in use.
Bool has_direction_p
MDirection direction_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 non-variable 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 80 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.

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 86 of file FluxStandard.h.


Constructor & Destructor Documentation

Default constructor, and destructor.


Member Function Documentation

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

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

Bool casa::FluxStandard::compute ( const String sourceName,
const Vector< MFrequency > &  mfreqs,
Vector< Flux< Double > > &  values,
Vector< Flux< Double > > &  errors,
const Bool  verbose = True 
)

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

Bool casa::FluxStandard::compute ( const String sourceName,
const Vector< Vector< MFrequency > > &  mfreqs,
Vector< Vector< Flux< Double > > > &  values,
Vector< Vector< Flux< 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.

Bool casa::FluxStandard::computeCL ( const String sourceName,
const Vector< Vector< MFrequency > > &  mfreqs,
const MEpoch mtime,
const MDirection position,
Vector< Vector< Flux< Double > > > &  values,
Vector< Vector< Flux< Double > > > &  errors,
Vector< String > &  clnames,
const 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 String casa::FluxStandard::makeComponentList ( const String sourceName,
const MFrequency mfreq,
const MEpoch mtime,
const Flux< Double > &  fluxval,
const ComponentShape cmp,
const SpectralModel spectrum,
const 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 String casa::FluxStandard::makeComponentList ( const String sourceName,
const Vector< MFrequency > &  mfreqs,
const MEpoch mtime,
const Vector< Flux< Double > > &  values,
const ComponentShape cmp,
const String prefix = "" 
) [static]

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

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

Decode a string representation of the standard or catalog name.

static String casa::FluxStandard::standardName ( const FluxStandard::FluxScale stdEnum) [static]

Return a standard string description for each scale or catalog.


Member Data Documentation

Definition at line 193 of file FluxStandard.h.

Definition at line 191 of file FluxStandard.h.

Flux scale in use.

Definition at line 189 of file FluxStandard.h.


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