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

PBMath1DAiry is a 1-D Airy Disk voltage pattern & Primary Beam. More...

#include <PBMath1DAiry.h>

Inheritance diagram for casa::PBMath1DAiry:
casa::PBMath1D casa::PBMathInterface

List of all members.

Public Member Functions

 PBMath1DAiry ()
 PBMath1DAiry (Quantity dishDiam, Quantity blockedDiam, Quantity maxRad, Quantity refFreq, BeamSquint squint=BeamSquint(MDirection(Quantity(0.0,"deg"), Quantity(0.0,"deg"), MDirection::Ref(MDirection::AZEL)), Quantity(1.0,"GHz")), Bool useSymmetricBeam=False)
 Instantiation from arguments; referenceFreq is used to scale maximumradius.
PBMath1DAiryoperator= (const PBMath1DAiry &other)
 Instantiation from a row in the Beam subTable PBMath1DAiry(const Table& BeamSubTable, Int row, Bool useSymmetricBeam=False);.
 ~PBMath1DAiry ()
 Clone the object CountedPtr<PBMathInterface> clone();.
PBMathInterface::PBClass whichPBClass ()
 Get the type of PB this is.
void summary (Int nValues=0)
 Flush the construction parameters to disk Bool flushToTable(Table& beamSubTable, Int iRow);.

Protected Member Functions

void fillPBArray ()
 Fill in vp_p array from construction parameters.

Private Attributes

Quantity dishDiam_p
Quantity blockedDiam_p

Detailed Description

PBMath1DAiry is a 1-D Airy Disk voltage pattern & Primary Beam.

Intended use:

Public interface

Prerequisite

Etymology

PBMath1DAiry: derived from PBMath1D, implements an Airy pattern PB and VP

Synopsis

See PBMath1D for a general synopsis of the 1D PB types.

For an unblocked dish: VP(x) = 2 * j1(x)/x

For blockage: areaRatio = (dish/block)^2; lengthRat = (dish/block); VP(x) = ( areaRatio* 2 * j1(x)/x - 2 j1(x*lengthRat)/(x*lengthRat) ) / (areaRatio - 1);

Example

       PBMath1DAiry airyPB( Quantity(24.5,"m"), Quantity(2.5,"m"),
                            Quantity(2*0.8564,"deg"), Quantity(1.0,"GHz") );
       airyPB.applyPB( inImage, outImage, pointingDir);

Motivation

All of the 1-D PB types have everything in common except for the details of their parameterization. This lightweight class deals with those differences: construction, filling the PBArray from construction parameters, and flushing to disk.

To Do

Definition at line 91 of file PBMath1DAiry.h.


Constructor & Destructor Documentation

casa::PBMath1DAiry::PBMath1DAiry ( Quantity  dishDiam,
Quantity  blockedDiam,
Quantity  maxRad,
Quantity  refFreq,
BeamSquint  squint = BeamSquint(MDirection(Quantity(0.0,"deg"), Quantity(0.0,"deg"), MDirection::Ref(MDirection::AZEL)), Quantity(1.0,"GHz")),
Bool  useSymmetricBeam = False 
)

Instantiation from arguments; referenceFreq is used to scale maximumradius.

default = no squint squint is the offset from pointing center if the Stokes R beam useSymmetricBeam forces a fit to the squinted beam

Clone the object CountedPtr<PBMathInterface> clone();.

destructor


Member Function Documentation

void casa::PBMath1DAiry::fillPBArray ( ) [protected, virtual]

Fill in vp_p array from construction parameters.

Implements casa::PBMath1D.

PBMath1DAiry& casa::PBMath1DAiry::operator= ( const PBMath1DAiry other)

Instantiation from a row in the Beam subTable PBMath1DAiry(const Table& BeamSubTable, Int row, Bool useSymmetricBeam=False);.

Copy constructor PBMath1DAiry(const PBMath1DAiry& other);

Assignment operator, by reference

void casa::PBMath1DAiry::summary ( Int  nValues = 0) [virtual]

Flush the construction parameters to disk Bool flushToTable(Table& beamSubTable, Int iRow);.

Summarize the construction data for this primary beam

Reimplemented from casa::PBMath1D.

Get the type of PB this is.

Implements casa::PBMathInterface.

Definition at line 126 of file PBMath1DAiry.h.

References casa::PBMathInterface::AIRY.


Member Data Documentation

Definition at line 142 of file PBMath1DAiry.h.

Definition at line 141 of file PBMath1DAiry.h.


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