Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.apo.nmsu.edu/Telescopes/coordConv/html/classcoord_conv_1_1_coord.html
Дата изменения: Thu May 7 21:42:46 2015
Дата индексирования: Sun Apr 10 04:33:35 2016
Кодировка: IBM-866
lsst.coordConv: coordConv::Coord Class Reference
lsst.coordConv  unknown
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | List of all members
coordConv::Coord Class Reference

#include <coord.h>

Public Member Functions

 Coord (double equatAng, double polarAng, double parallax=0)
 
 Coord (double equatAng, double polarAng, double parallax, double equatPM, double polarPM, double radVel)
 
 Coord (Eigen::Vector3d const &pos)
 
 Coord (Eigen::Vector3d const &pos, Eigen::Vector3d const &pm)
 
 Coord ()
 
 ~Coord ()
 
bool atInfinity () const
 
bool atPole () const
 
double getDistance () const
 
double getParallax () const
 
bool getSphPos (double &equatAng, double &polarAng) const
 
bool getPM (double &equatPM, double &polarPM) const
 
double getRadVel () const
 
Eigen::Vector3d const getVecPos () const
 
Eigen::Vector3d const getVecPM () const
 
bool isfinite () const
 
double angularSeparation (Coord const &coord) const
 
double orientationTo (Coord const &coord) const
 
Coord offset (double &toOrient, double fromOrient, double dist) const
 
bool operator== (Coord const &rhs)
 
bool operator!= (Coord const &rhs)
 
std::string __repr__ () const
 

Detailed Description

Coordinates represent target position and proper motion.

The coordinate system is always right handed, so azimuth is 0 south, 90 east (and hour angle is negated, though it is not visible in very much of the API).

Access is available as spherical coordinates and cartesian vectors.

If parallax < MinParallax / 0.9 then isInfinity() returns true and parallax is reported as 0. Having a lower limit prevents vector operations from overflowing.

Definition at line 27 of file coord.h.

Constructor & Destructor Documentation

coordConv::Coord::Coord ( double  equatAng,
double  polarAng,
double  parallax = 0 
)
explicit

Construct a Coord from spherical position

Parameters
[in]equatAngequatorial angle (e.g. RA, Long, Az) (degrees)
[in]polarAngpolar angle (e.g. Dec, Latitude, Alt) (degrees)
[in]parallaxparallax (arcsec)

Definition at line 20 of file coord.cc.

coordConv::Coord::Coord ( double  equatAng,
double  polarAng,
double  parallax,
double  equatPM,
double  polarPM,
double  radVel 
)
explicit

Construct a Coord from spherical position and proper motion

Parameters
[in]equatAngequatorial angle (e.g. RA, Long, Az) (degrees)
[in]polarAngpolar angle (e.g. Dec, Latitude, Alt) (degrees)
[in]parallaxparallax (arcsec)
[in]equatPMequatorial proper motion (arcsec/century); this is dEquatAng/dt, so it gets large near the pole
[in]polarPMpolar proper motion (arcsec/century)
[in]radVelradial velocity (km/sec, positive receding)

Definition at line 26 of file coord.cc.

coordConv::Coord::Coord ( Eigen::Vector3d const &  pos)
explicit

Construct a Coord from cartesian position

Parameters
[in]poscartesian position (AU)
Warning
: distance is not constrained

Definition at line 54 of file coord.cc.

coordConv::Coord::Coord ( Eigen::Vector3d const &  pos,
Eigen::Vector3d const &  pm 
)
explicit

Construct a Coord from cartesian position and velocity

Parameters
[in]poscartesian position (AU)
[in]pmcartesian proper motion (AU/year)
Warning
: distance is not constrained

Definition at line 62 of file coord.cc.

coordConv::Coord::Coord ( )
explicit

Construct a Coord with unknown position and proper motion

Definition at line 70 of file coord.cc.

coordConv::Coord::~Coord ( )
inline

Definition at line 73 of file coord.h.

Member Function Documentation

std::string coordConv::Coord::__repr__ ( ) const

Return a string representation

Definition at line 227 of file coord.cc.

double coordConv::Coord::angularSeparation ( Coord const &  coord) const

Compute the angular separation from another coord

Returns
angular separation (deg)

Definition at line 150 of file coord.cc.

bool coordConv::Coord::atInfinity ( ) const
inline

Return true if object is so far away that it is considered to be at infinity

Returns
true if distance is within 90% of MinParallax (includes some slop to handle coordinate conversion that reduce distance slightly).

Definition at line 81 of file coord.h.

bool coordConv::Coord::atPole ( ) const
inline

Return true if so near the pole that equatorial angles cannot be computed

Definition at line 86 of file coord.h.

double coordConv::Coord::getDistance ( ) const
inline

Get distance in AU

Returns
distance, in AU; if atInfinity() then the value is not inf, but will often be approximately AUPerParsec/MinParallax.

Definition at line 94 of file coord.h.

double coordConv::Coord::getParallax ( ) const

Get parallax in arcsec

Returns
parallax (arcsec), or 0 if atInfinity()

Definition at line 78 of file coord.cc.

bool coordConv::Coord::getPM ( double &  equatPM,
double &  polarPM 
) const

Get proper motion

Parameters
[out]equatPMequatorial component of proper motion (e.g. dRA/dt) (arcsec/century)
[out]polarPMpolar component of proper motion (e.g. dDec/dt) (arcsec/century)
Returns
atPole; if true then equatPM and polarPM are arbitrarily set to 0

Definition at line 98 of file coord.cc.

double coordConv::Coord::getRadVel ( ) const

Get radial velocity

Returns
radVel: radial velocity (km/sec, positive receding)
Warning
if atInfinity then radVel may be surprisingly changed by a coordinate transformation; you may want to report toRadVel = fromRadVel in that situation

Definition at line 134 of file coord.cc.

bool coordConv::Coord::getSphPos ( double &  equatAng,
double &  polarAng 
) const

Get spherical position

Parameters
[out]equatAngequatorial angle (e.g. RA, Long, Az) (degrees)
[out]polarAngpolar angle (e.g. Dec, Latitude, Alt) (degrees)
Returns
atPole; if true then equatAng is arbitrarily set to 0

Definition at line 82 of file coord.cc.

Eigen::Vector3d const coordConv::Coord::getVecPM ( ) const
inline

Get the cartesian proper motion and radial velocity

Returns
cartesian proper motion and radial velocity (AU/year)

Definition at line 142 of file coord.h.

Eigen::Vector3d const coordConv::Coord::getVecPos ( ) const
inline

Get the cartesian position and velocity

Returns
cartesian position (AU)

Definition at line 135 of file coord.h.

bool coordConv::Coord::isfinite ( ) const

Test if all values are finite

Definition at line 141 of file coord.cc.

Coord coordConv::Coord::offset ( double &  toOrient,
double  fromOrient,
double  dist 
) const

Compute a new coord offset from this coord along the arc of a great circle

Parameters
[out]toOrientorientation of offset arc at offset position (deg)
[in]fromOrientorientation of offset arc at this position (deg)
[in]distoffset distance as the length of the arc of a great circle (deg)
Returns
offset coord
Exceptions
runtime_errorif this coord is too near a pole

This diagram may help:

                                                    .
                                              .      тОЮ toOrient
                                        --------------> dir. of increasing equatorial angle at offset coord
                               .    offset coord
                      .
            .
   .         тОЮ fromOrient

-------------—> dir. of increasing equatorial angle at this coord this coord

Definition at line 172 of file coord.cc.

bool coordConv::Coord::operator!= ( Coord const &  rhs)
inline

Definition at line 195 of file coord.h.

bool coordConv::Coord::operator== ( Coord const &  rhs)
inline

Definition at line 191 of file coord.h.

double coordConv::Coord::orientationTo ( Coord const &  coord) const

Compute the orientation of a great circle offset to another coord

In detail: computes the orientation at this point of a great circle connecting this coord to another coord. The orientation is 0 if the great circle lies along the direction of increasing equatorial angle, 90 if it lies along the direction increasing polar angle.

Returns
orientation (deg), or NaN if the angular separation is noo near 0 or 180 degrees

Definition at line 156 of file coord.cc.


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