Tudat/Astrodynamics/OrbitDetermination/ObservationPartials/angularPositionPartial.cpp
//! Function to compute the derivative of (direct geometric) declination w.r.t. position of observer or observed object.
Function to compute the derivative of (direct geometric) declination w.r.t. position of observer or observed object.
Function to compute the derivative of ( direct geometric ) declination w . r . t . position of observer or observed object .
Eigen::Matrix< double, 1, 3 > calculatePartialOfDeclinationWrtLinkEndPosition(
        Eigen::Vector3d relativeRangeVector,
        const bool isLinkEndReceiver )
{
    double partialMultiplier = ( ( isLinkEndReceiver ) ? 1.0 : -1.0 );
    double range = relativeRangeVector.norm( );
    Eigen::Matrix< double, 1, 3 > partial = partialMultiplier * relativeRangeVector.transpose( ) / range;
    partial *= relativeRangeVector( 2 ) / ( range * range );
    partial += -partialMultiplier * ( Eigen::Vector3d::UnitZ( ) ).transpose( ) / range;
    return partial;
}
Eigen :: Matrix < double , 1 , 3 > calculatePartialOfDeclinationWrtLinkEndPosition ( Eigen :: Vector3d relativeRangeVector , const bool isLinkEndReceiver ) { double partialMultiplier = ( ( isLinkEndReceiver ) ? 1.0 : -1.0 ) ; double range = relativeRangeVector . norm ( ) ; Eigen :: Matrix < double , 1 , 3 > partial = partialMultiplier * relativeRangeVector . transpose ( ) / range ; partial *= relativeRangeVector ( 2 ) / ( range * range ) ; partial += - partialMultiplier * ( Eigen :: Vector3d :: UnitZ ( ) ) . transpose ( ) / range ; return partial ; }
Function to compute the derivative of (direct geometric) declination w.r.t.
Function to compute the derivative of ( direct geometric ) declination w . r . t .
// Define multiplier of patial vector // Set partial vector