1#ifndef BundleLidarRangeConstraint_h 
    2#define BundleLidarRangeConstraint_h 
   10#include <QSharedPointer> 
   13#include "BundleLidarControlPoint.h" 
   14#include "BundleMeasure.h" 
   15#include "BundleObservation.h" 
   16#include "LinearAlgebra.h" 
   17#include "SparseBlockMatrix.h" 
Implements range constraint between image position and lidar point acquired simultaneously with the i...
 
double rangeObservedSigma()
Return sigma of range observation.
 
double m_rangeObserved
! deltas between spacecraft & lidar point in body-fixed coordinates
 
double m_dX
! 2D image point corresponding to 3D lidar point on surface.
 
double m_vtpv
Weighted sum-of-squares of residual.
 
QString formatBundleOutputString(bool errorProp=false)
Creates & returns formatted QString for lidar range constraint to output to bundleout_lidar....
 
BundleLidarRangeConstraint(LidarControlPointQsp lidarControlPoint, BundleMeasureQsp measure)
constructor
 
BundleLidarRangeConstraint & operator=(const BundleLidarRangeConstraint &src)
Assignment operator.
 
double rangeComputed()
Return computed lidar range.
 
LidarControlPointQsp m_lidarControlPoint
Parent lidar control point.
 
BundleObservationQsp m_bundleObservation
BundleObservation associated with measure.
 
double m_rangeObservedSigma
Uncertainty of observed range.
 
bool applyConstraint(SparseBlockMatrix &normalsMatrix, LinearAlgebra::MatrixUpperTriangular &N22, SparseBlockColumnMatrix &N12, LinearAlgebra::VectorCompressed &n1, LinearAlgebra::Vector &n2)
Computes partial derivatives of range condition equation and adds contribution into the bundle adjust...
 
double m_rangeObservedWeightSqrt
Square-root of observed range weight.
 
void errorPropagation()
TODO: to be completed.
 
~BundleLidarRangeConstraint()
Destructor.
 
double vtpv()
Return current value of weighted sum-of-squares of residual.
 
double m_adjustedSigma
Adjusted uncertainty of range.
 
double rangeObserved()
Return observed lidar range.
 
double rangeAdjustedSigma()
Return adjusted sigma of range observation.
 
double m_rangeComputed
Computed range from distance condition.
 
void computeRange()
Compute range between spacecraft & lidar point on surface given the current values of the spacecraft ...
 
boost::numeric::ublas::compressed_vector< double > VectorCompressed
Definition for an Isis::LinearAlgebra::VectorCompressed of doubles.
 
boost::numeric::ublas::vector< double > Vector
Definition for an Isis::LinearAlgebra::Vector of doubles.
 
boost::numeric::ublas::symmetric_matrix< double, boost::numeric::ublas::upper > MatrixUpperTriangular
Definition for an Isis::LinearAlgebra::MatrixUpperTriangular of doubles with an upper configuration.
 
This is free and unencumbered software released into the public domain.
 
QSharedPointer< BundleLidarRangeConstraint > BundleLidarRangeConstraintQsp
Typdef for BundleLidarRangeConstraint QSharedPointer.