LSST Applications g06d8191974+de063e15a7,g180d380827+d0b6459378,g2079a07aa2+86d27d4dc4,g2305ad1205+f1ae3263cc,g29320951ab+5752d78b6e,g2bbee38e9b+85cf0a37e7,g337abbeb29+85cf0a37e7,g33d1c0ed96+85cf0a37e7,g3a166c0a6a+85cf0a37e7,g3ddfee87b4+b5254b9343,g48712c4677+9ea88d309d,g487adcacf7+05f7dba17f,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+48904e3942,g64a986408d+de063e15a7,g858d7b2824+de063e15a7,g864b0138d7+33ab2bc355,g8a8a8dda67+585e252eca,g99cad8db69+4508353287,g9c22b2923f+53520f316c,g9ddcbc5298+9a081db1e4,ga1e77700b3+15fc3df1f7,gb0e22166c9+60f28cb32d,gba4ed39666+c2a2e4ac27,gbb8dafda3b+ccb7f83a87,gc120e1dc64+6caf640b9b,gc28159a63d+85cf0a37e7,gc3e9b769f7+548c5e05a3,gcf0d15dbbd+b5254b9343,gdaeeff99f8+f9a426f77a,ge6526c86ff+515b6c9330,ge79ae78c31+85cf0a37e7,gee10cc3b42+585e252eca,gff1a9f87cc+de063e15a7,w.2024.17
LSST Data Management Base Package
Loading...
Searching...
No Matches
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 (const Point &star, double timeDeltaYears) const
 Apply proper motion correction to the input star, returning a star with PM-corrected coordinates.
 

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 ( const 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 // If delta-time is negative, the correction is in the opposite direction.
38 amount = timeDeltaYears < 0 ? -amount : amount;
39 auto result = spherePoint.offset(_offsetBearing * geom::radians, amount * geom::radians);
40 Point newStar(star);
41 newStar.x = result.getRa().asDegrees();
42 newStar.y = result.getDec().asDegrees();
43 return newStar;
44}
py::object result
Definition _schema.cc:429
Point in an unspecified spherical coordinate system.
Definition SpherePoint.h:57
T hypot(T... args)
AngleUnit constexpr degrees
constant with units of degrees
Definition Angle.h:110
AngleUnit constexpr radians
constant with units of radians
Definition Angle.h:109

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

Friends And Related Symbol Documentation

◆ operator<<

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

Definition at line 46 of file ProperMotion.cc.

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

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