LSST Applications  21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
Public Member Functions | Friends | List of all members
lsst::jointcal::ProperMotion Class Reference

Proper motion data for a reference star or fitted star. More...

#include <ProperMotion.h>

Public Member Functions

 ProperMotion (double ra, double dec, double raErr, double decErr, double raDecCov=0)
 
 ProperMotion (ProperMotion const &)=default
 
 ProperMotion (ProperMotion &&)=default
 
ProperMotionoperator= (ProperMotion const &)=default
 
ProperMotionoperator= (ProperMotion &&)=default
 
 ~ProperMotion ()=default
 
Point apply (Point star, double timeDeltaYears) const
 Apply proper motion correction to the input star, returning a star with PM-corrected coordinates. More...
 

Friends

std::ostreamoperator<< (std::ostream &stream, ProperMotion const &pm)
 

Detailed Description

Proper motion data for a reference star or fitted star.

Whether to just use these values or fit them is determined by the RefStar and FittedStar they belong to.

Units are radians/year Note: RA proper motion is pm_ra*cos(dec)

Definition at line 45 of file ProperMotion.h.

Constructor & Destructor Documentation

◆ ProperMotion() [1/3]

lsst::jointcal::ProperMotion::ProperMotion ( double  ra,
double  dec,
double  raErr,
double  decErr,
double  raDecCov = 0 
)
inline

Definition at line 47 of file ProperMotion.h.

48  : _ra(ra), _dec(dec), _raErr(raErr), _decErr(decErr), _raDecCov(raDecCov) {
49  _offsetBearing = atan2(dec, ra);
50  };
double dec
Definition: Match.cc:41
T atan2(T... args)

◆ ProperMotion() [2/3]

lsst::jointcal::ProperMotion::ProperMotion ( ProperMotion const &  )
default

◆ ProperMotion() [3/3]

lsst::jointcal::ProperMotion::ProperMotion ( ProperMotion &&  )
default

◆ ~ProperMotion()

lsst::jointcal::ProperMotion::~ProperMotion ( )
default

Member Function Documentation

◆ apply()

Point lsst::jointcal::ProperMotion::apply ( Point  star,
double  timeDeltaYears 
) const

Apply proper motion correction to the input star, returning a star with PM-corrected coordinates.

NOTE: This method does not apply to the coordinate errors (Point does not include uncertainty).

Parameters
starThe star to correct for this proper motion.
timeDeltaYearsThe difference in time from the correction epoch to correct for, in years.
Returns
The star with corrected coordinates.

Definition at line 34 of file ProperMotion.cc.

34  {
35  geom::SpherePoint spherePoint(star.x, star.y, geom::degrees);
36  double amount = std::hypot(_ra * timeDeltaYears, _dec * timeDeltaYears);
37  auto result = spherePoint.offset(_offsetBearing * geom::radians, amount * geom::radians);
38  Point newStar(star);
39  newStar.x = result.getRa().asDegrees();
40  newStar.y = result.getDec().asDegrees();
41  return newStar;
42 }
py::object result
Definition: _schema.cc:429
Point in an unspecified spherical coordinate system.
Definition: SpherePoint.h:57
T hypot(T... args)
constexpr AngleUnit degrees
constant with units of degrees
Definition: Angle.h:109
constexpr AngleUnit radians
constant with units of radians
Definition: Angle.h:108

◆ operator=() [1/2]

ProperMotion& lsst::jointcal::ProperMotion::operator= ( ProperMotion &&  )
default

◆ operator=() [2/2]

ProperMotion& lsst::jointcal::ProperMotion::operator= ( ProperMotion const &  )
default

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream stream,
ProperMotion const &  pm 
)
friend

Definition at line 44 of file ProperMotion.cc.

44  {
45  stream << "pm_ra*cos(dec)=" << pm._ra << "rad/yr, pm_dec=" << pm._dec << "rad/yr, pm_raErr=" << pm._raErr
46  << "rad/yr, pm_decErr=" << pm._decErr << "rad/yr, pm_raDecCov=" << pm._raDecCov;
47  return stream;
48 }

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