WSF
MTT Class Reference

#include <MTT.hpp>

Collaboration diagram for MTT:

Public Member Functions

 MTT ()
 MTT (const MTT &aSrc)
MTToperator= (const MTT &)=delete
 ~MTT ()=default
MTTClone () const
bool ProcessInput (UtInput &aInput)
WsfMTT_InterfaceGetInterface () const
MTT_TracksGetTracks ()
const MTT_ParametersGetParameters () const
MTT_ParametersGetParameters ()
void SetParameters (const MTT_Parameters &aParameters)
void SetTrackManager (WsfTrackManager *aTrackManager)
 Called from MTT_Fusion/MTT_Correlation during initialization.
void SaveData (MTT_PerceivedCluster *aNonLocalTrackPtr, MTT_ActiveTrack::Data *aTempData, MTT_ActiveTrack *aLocalTrackPtr)
 Save temporary data from the correlation step, that is needed for fusion.
bool RemoveSavedData (int aMTT_TrackId, MTT_PerceivedCluster *&aNonLocalTrackPtr, MTT_ActiveTrack::Data *&aTempData, MTT_ActiveTrack *&aLocalTrackPtr)
MTT_ActiveTrackMTT_Correlate (double aSimTime, const MTT_PerceivedCluster &aNonlocalTrack, MTT_ActiveTrack::Data &aTempActiveData)
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
void MTT_Fuse (double aSimTime, const MTT_PerceivedCluster &aNonlocalTrack, MTT_ActiveTrack &aLocalTrack, MTT_ActiveTrack::Data &aTempActiveData)
 Top-level fusion method.
void mttc2a (const MTT_CandidateTrack::Data &aCandidateTrackData, MTT_ActiveTrack::Data &aActiveTrackData, bool &aError)
 Multiple target tracking - promote candidate track.
MTT_ActiveTrackmttcat (double aSimTime, const MTT_PerceivedCluster &aMeasurement)
 Multiple target tracking - check active track.
int mttcct (double aSimTime, const MTT_PerceivedCluster &aMeasurement, MTT_ActiveTrack *&aActiveTrackPtr)
void mttpvf (const UtMatrixd &aVerticalCovariance, MTT_Track &aCandidateTrack)
void mttdps_Correlation (const double &aSimTime, const MTT_PerceivedCluster &aMeasurement, MTT_ActiveTrack *&aTrackPtr)
 Multiple target tracking - detection processing system (correlation).
void mttdps_Fusion (const double &aSimTime, const MTT_PerceivedCluster &aMeasurement, MTT_ActiveTrack *aTrackPtr)
 Multiple target tracking - detection processing system (fusion).
void mttet (double aSimTime, const MTT_PerceivedCluster &aMeasurement)
 Multiple target tracking - update embryonic tracks.
void mttgtm (const MTT_ActiveTrack::Data &aActiveTrackData, const MTT_Track &aTrackHeader, const MTT_Measurement &aMeasurement, const double &aDT, double &aHypothesisTestValue, double &aInnovationValue)
 Multiple target tracking - measurement to trk gate test.
void mttgtt (const MTT_ActiveTrack::Data &aActiveTrackData, const MTT_ActiveTrack::Data &aTempActiveTrackData, double aDt, double &aTestValue, double &aInnovationValue)
void mttlfp (double aDt, UtMatrixd &aCovarianceMatrix, UtMatrixd &aStateVector)
void mttlfm (UtMatrixd &aStraightFlightStateVector, UtMatrixd &aStraightFlightErrorCovarianceMatrix, const UtMatrixd &aVerticalErrorCovarianceMatrix, const UtMatrixd &aVerticalFlightInformationState, const MTT_Track &aTrack, const MTT_Measurement &aMeasurement, double aDt, double &aStraightFlightLikelihood)
void mttlfq (const UtMatrixd &aStraightFlightState, const UtMatrixd &aStraightFlightErrorCovariance, const UtMatrixd &aVerticalErrorCovariance, const UtMatrixd &aVerticalFlightState, const MTT_Track &aTrack, const MTT_Measurement &aMeasurement, double aDT, double &aHypothesisTestValue, double &aInnovationValue)
void mtttfe (const MTT_PerceivedCluster &aMeasurement, const MTT_ActiveTrack::Data &aUpdateData, MTT_Track &aTrack, double aUpdateInterval, double aSimTime)
void mttflf (UtMatrixd &aFilterStates, UtMatrixd &aHorizontalInfo, const UtMatrixd &aFilterStatesUpdate, const UtMatrixd &aHorizontalInfoUpdate, const UtMatrixd &aPrevFilterStates, const UtMatrixd &aPrevHorizInfoMatrix, double aDt, double &aLikelihoodValue)
void mttftf (UtMatrixd &aFilterStates, UtMatrixd &aHorizontalInfo, const UtMatrixd &aFilterStatesUpdate, const UtMatrixd &aHorizontalInfoUpdate, const UtMatrixd &aPrevFilterStates, const UtMatrixd &aPrevHorizInfoMatrix, double aDt, double &aLikelihoodValue)
void mtttfm (UtMatrixd &aTurningFlightStateVector, UtMatrixd &aTurningFlightErrorCovarianceMatrix, const UtMatrixd &aVerticalErrorCovarianceMatrix, const UtMatrixd &aVerticalFlightInformationState, const MTT_Track &aTrack, const MTT_Measurement &aMeasurement, double aDt, double &aTurningFlightLikelihood)
void mtttfp (double aDt, UtMatrixd &aCovarianceMatrix, UtMatrixd &aStateVector)
void mtttfq (const UtMatrixd &aTurningFlightState, const UtMatrixd &aTurningFlightErrorCovariance, const UtMatrixd &aVerticalErrorCovariance, const UtMatrixd &aVerticalFlightState, const MTT_Track &aTrack, const MTT_Measurement &aMeasurement, const double &aDT, double &aHypothesisTestValue, double &aInnovationValue)
void mtttfs_Correlation (double aSimTime, const MTT_PerceivedCluster &aNonlocalTrack, MTT_ActiveTrack::Data &aTempActiveData, MTT_ActiveTrack *&aLocalTrackPtr)
void mtttfs_Fusion (double aSimTime, const MTT_PerceivedCluster &aNonlocalTrack, MTT_ActiveTrack::Data &aTempActiveData, MTT_ActiveTrack *&aLocalTrackPtr)
void mttuat (double aSimTime, const MTT_PerceivedCluster &aNonLocalTrack, MTT_Track &aActiveTrack)
 Multiple target tracking - update an active track.
void mttuhf (double aSimTime, const MTT_PerceivedCluster &aMeasurement, MTT_ActiveTrack *&aTrackPtr)
 Multiple target tracking - update height filter.
void mttuhi (double aDt, const UtMatrixd &aHorizontalAcceleration, UtMatrixd &aHorizontalInfoMatrix, UtMatrixd &aHorizontalState, const UtMatrixd &aConnectionMatrix, const UtMatrixd &aConnectionMatrixTranspose, const UtMatrixd &aDxDyCovariance, double aSensorLocationX, double aSensorLocationY, double aDx, double aDy, int aTrackType)
 Multiple target tracking - update information filter.
void mttuvi (double aDt, const UtMatrixd &aVerticalInfoFilter, UtMatrixd &aVerticalInfoMatrix, UtMatrixd &aVerticalState, const UtMatrixd &aVerticalCandidateInfoFilter, double aSensorLocationZ, double aTargetLocationZ, unsigned aRangeValid, unsigned aElevationValid, int aTrackType)
 Multiple target tracking - update vertical info filter.
void mttuvp (double aDt, const UtMatrixd &aVerticalInfoFilter, UtMatrixd &aVerticalInfoMatrix, UtMatrixd &aVerticalState, int aTrackType)
 Multiple target tracking - update vertical info filter.
void mttalt (const MTT_ActiveTrack *aLocalTrackPtr, double &aAlt)

Public Attributes

WsfPerfectCorrelation mHF_Correlator

Detailed Description

A container for data related to the Suppressor Multi-Target Tracker (MTT). This container stores data that may be related to both correlation and fusion, or neither, and they are necessary but redundant parts of the implementation (i.e., the functionality exists in the track manager, but data and code are necessary for functionality of the MTT. The architecture is for the correlator to own the MTT instance. That way ProcessInput can be called, and the object can be cloned. The correlator then calls "Register;" At that point the fuser has access to it by calling "GetMTT."

Constructor & Destructor Documentation

◆ MTT() [1/2]

MTT::MTT ( )

References mHF_Correlator.

Referenced by Clone(), MTT(), and operator=().

◆ MTT() [2/2]

MTT::MTT ( const MTT & aSrc)

References mHF_Correlator, and MTT().

◆ ~MTT()

MTT::~MTT ( )
default

Member Function Documentation

◆ Clone()

MTT * MTT::Clone ( ) const
inline

References MTT().

◆ GetInterface()

WsfMTT_Interface * MTT::GetInterface ( ) const
inline

◆ GetParameters() [1/2]

MTT_Parameters & MTT::GetParameters ( )
inline

◆ GetParameters() [2/2]

const MTT_Parameters & MTT::GetParameters ( ) const
inline

◆ GetTracks()

MTT_Tracks & MTT::GetTracks ( )
inline

◆ MTT_Correlate()

MTT_ActiveTrack * MTT::MTT_Correlate ( double aSimTime,
const MTT_PerceivedCluster & aNonlocalTrack,
MTT_ActiveTrack::Data & aTempActiveData )

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Fortran-Converted routines from Suppressor 7+, mttexe.f

Generic distribution statement follows: Top-level correlation method.

References MTT_PerceivedCluster::mCombinedTrackPtr, MTT_PerceivedCluster::mMeasurementPtr, mttdps_Correlation(), and mtttfs_Correlation().

◆ MTT_Fuse()

void MTT::MTT_Fuse ( double aSimTime,
const MTT_PerceivedCluster & aNonlocalTrack,
MTT_ActiveTrack & aLocalTrack,
MTT_ActiveTrack::Data & aTempActiveData )

◆ mttalt()

void MTT::mttalt ( const MTT_ActiveTrack * aLocalTrackPtr,
double & aAlt )

get altitude for an active track

Parameters
aLocalTrackPtrThe active track from which the altitude is extracted.
aAlt(output) The perceived altitude.

References MTT_ActiveTrack::GetData(), MTT_Track::mVerticalChannelActive, MTT_ActiveTrack::Data::mVerticalInfoMatrix, and MTT_ActiveTrack::Data::mVerticalState.

Referenced by mtttfs_Correlation().

◆ mttc2a()

◆ mttcat()

◆ mttcct()

int MTT::mttcct ( double aSimTime,
const MTT_PerceivedCluster & aMeasurement,
MTT_ActiveTrack *& aActiveTrackPtr )

Multiple target tracking - check candidate track. Note: In the fortran function, the address of the active track is returned if the candidate track is promoted, -1 if the CT is correlated but not promoted, and 0 if no CT is correlated. For C++ we can't return these results without nasty casts, so I'm returning an int result of -1, 0, 1 (1 corresponding with the first case above), and the address is an in/out pointer parameter. 10/14/2010 In the latest version, the function has been replaced by a subroutine, where the pointer to the new active track and the new active track id are returned. So the new conversion will be closer to the original fortran.

References WsfObserver::ActiveTrackInitiated(), WsfObserver::CandidateTrackDropped(), MTT_CandidateTrack::GetData(), MTT_Track::GetId(), MTT_Tracks::mActiveTrackCounter, MTT_RadarMeasurement::Data::mAzimuth, MTT_RadarMeasurement::Data::mAzimuthStDev, MTT_Tracks::mCandidateTracks, MTT_Measurement::mDataAvailable, MTT_Measurement::mDataPtr, MTT_Track::mDataPtr, MTT_RadarMeasurement::Data::mElevation, MTT_RadarMeasurement::Data::mElevationStDev, MTT_CandidateTrack::Data::mErrorInfoMatrix, MTT_CandidateTrack::Data::mHorizontalState, MTT_PerceivedCluster::mMeasurementPtr, MTT_RadarMeasurement::Data::mRange, MTT_RadarMeasurement::Data::mRangeStDev, MTT_RadarMeasurement::Data::mSensorLocation, MTT_Track::mTrackId, mttc2a(), mttcct(), mttgtm(), mttpvf(), mttuat(), mttuhi(), mttuvi(), MTT_Track::mUpdateTime, MTT_Track::mVerticalChannelActive, MTT_Track::mVerticalChannelUpdateTime, MTT_CandidateTrack::Data::mVerticalErrorInfoMatrix, and MTT_CandidateTrack::Data::mVerticalState.

Referenced by mttcct(), and mttdps_Correlation().

◆ mttdps_Correlation()

void MTT::mttdps_Correlation ( const double & aSimTime,
const MTT_PerceivedCluster & aMeasurement,
MTT_ActiveTrack *& aTrackPtr )

Multiple target tracking - detection processing system (correlation).

References MTT_Track::mTrackId, MTT_PerceivedCluster::mTrackNumber, mttcat(), mttcct(), mttet(), mttuat(), and mttuhf().

Referenced by MTT_Correlate().

◆ mttdps_Fusion()

void MTT::mttdps_Fusion ( const double & aSimTime,
const MTT_PerceivedCluster & aMeasurement,
MTT_ActiveTrack * aTrackPtr )

Multiple target tracking - detection processing system (fusion).

References MTT_PerceivedCluster::mTrackNumber, and mttuhf().

◆ mttet()

◆ mttflf()

void MTT::mttflf ( UtMatrixd & aFilterStates,
UtMatrixd & aHorizontalInfo,
const UtMatrixd & aFilterStatesUpdate,
const UtMatrixd & aHorizontalInfoUpdate,
const UtMatrixd & aPrevFilterStates,
const UtMatrixd & aPrevHorizInfoMatrix,
double aDt,
double & aLikelihoodValue )

Multiple target tracking - fuse external track into local straight flight filter with measurement.

References mttlfp().

Referenced by mtttfe().

◆ mttftf()

void MTT::mttftf ( UtMatrixd & aFilterStates,
UtMatrixd & aHorizontalInfo,
const UtMatrixd & aFilterStatesUpdate,
const UtMatrixd & aHorizontalInfoUpdate,
const UtMatrixd & aPrevFilterStates,
const UtMatrixd & aPrevHorizInfoMatrix,
double aDt,
double & aLikelihoodValue )

Multiple target tracking - fuse external track into local turning flight filter with measurement

References mtttfp().

Referenced by mtttfe().

◆ mttgtm()

void MTT::mttgtm ( const MTT_ActiveTrack::Data & aActiveTrackData,
const MTT_Track & aTrackHeader,
const MTT_Measurement & aMeasurement,
const double & aDT,
double & aHypothesisTestValue,
double & aInnovationValue )

◆ mttgtt()

void MTT::mttgtt ( const MTT_ActiveTrack::Data & aActiveTrackData,
const MTT_ActiveTrack::Data & aTempActiveTrackData,
double aDt,
double & aTestValue,
double & aInnovationValue )

Multiple target tracking - track to track gate test.

Parameters
aActiveTrackData(active track data)
aTempActiveTrackData(measurement data)
aDtTime difference between measurment and last track update.
aTestValueTODO_MIKE please document.
aInnovationValue(test value to determine if within error ellipse)

References MTT_ActiveTrack::Data::mFilterStates, MTT_ActiveTrack::Data::mHorizontalInfoMatrix, mttlfp(), and mtttfp().

Referenced by mtttfs_Correlation().

◆ mttlfm()

void MTT::mttlfm ( UtMatrixd & aStraightFlightStateVector,
UtMatrixd & aStraightFlightErrorCovarianceMatrix,
const UtMatrixd & aVerticalErrorCovarianceMatrix,
const UtMatrixd & aVerticalFlightInformationState,
const MTT_Track & aTrack,
const MTT_Measurement & aMeasurement,
double aDt,
double & aStraightFlightLikelihood )

Multiple target tracking - update straight-flight model with measurement

Parameters
aStraightFlightStateVector(straight-flight state vector)
aStraightFlightErrorCovarianceMatrix(straight-flight error covariance matrix)
aVerticalErrorCovarianceMatrix(vertical error covariance matrix)
aVerticalFlightInformationState(vertical-flight information state)
aTrack(pointer to track header)
aMeasurement(pointer to measurement header block)
aDtThe time difference between measurment and last track update.
aStraightFlightLikelihood(likelihood of straight-flight)

References MTT_RadarMeasurement::GetData(), MTT_RadarMeasurement::Data::mAzimuth, MTT_RadarMeasurement::Data::mAzimuthStDev, MTT_Measurement::mDataAvailable, MTT_RadarMeasurement::Data::mElevation, MTT_RadarMeasurement::Data::mRange, MTT_RadarMeasurement::Data::mRangeRate, MTT_RadarMeasurement::Data::mRangeRateStDev, MTT_RadarMeasurement::Data::mRangeStDev, MTT_RadarMeasurement::Data::mSensorLocation, MTT_RadarMeasurement::Data::mSensorVelocity, mttlfp(), and MTT_Track::mVerticalChannelActive.

Referenced by mttuat().

◆ mttlfp()

void MTT::mttlfp ( double aDt,
UtMatrixd & aCovarianceMatrix,
UtMatrixd & aStateVector )

Multiple target tracking - propagate lf states.

Parameters
aDtdelta time between measurment and last track update.
aCovarianceMatrixCovariance matrix to propagate.
aStateVectorState vector to propagate.

Referenced by mttflf(), mttgtt(), mttlfm(), and mttlfq().

◆ mttlfq()

void MTT::mttlfq ( const UtMatrixd & aStraightFlightState,
const UtMatrixd & aStraightFlightErrorCovariance,
const UtMatrixd & aVerticalErrorCovariance,
const UtMatrixd & aVerticalFlightState,
const MTT_Track & aTrack,
const MTT_Measurement & aMeasurement,
double aDt,
double & aHypothesisTestValue,
double & aInnovationValue )

Multiple target tracking - gate querry for straight-flight.

Parameters
aStraightFlightState(straight-flight state vector)
aStraightFlightErrorCovariance(straight-flight error covariance matrix)
aVerticalErrorCovariance(vertical error covariance matrix)
aVerticalFlightState(vertical-flight information state)
aTrack(track header)
aMeasurement(measurement header)
aDtTime difference between measurment and last track update.
aHypothesisTestValueTODO_MIKE Please document.
aInnovationValue(hypothesis test value)

References MTT_RadarMeasurement::GetData(), MTT_RadarMeasurement::Data::mAzimuth, MTT_RadarMeasurement::Data::mAzimuthStDev, MTT_Measurement::mDataAvailable, MTT_RadarMeasurement::Data::mElevation, MTT_RadarMeasurement::Data::mRange, MTT_RadarMeasurement::Data::mRangeStDev, MTT_RadarMeasurement::Data::mSensorLocation, mttlfp(), and MTT_Track::mVerticalChannelActive.

Referenced by mttgtm().

◆ mttpvf()

void MTT::mttpvf ( const UtMatrixd & aVerticalCovariance,
MTT_Track & aCandidateTrack )

◆ mtttfe()

◆ mtttfm()

void MTT::mtttfm ( UtMatrixd & aTurningFlightStateVector,
UtMatrixd & aTurningFlightErrorCovarianceMatrix,
const UtMatrixd & aVerticalErrorCovarianceMatrix,
const UtMatrixd & aVerticalFlightInformationState,
const MTT_Track & aTrack,
const MTT_Measurement & aMeasurement,
double aDt,
double & aTurningFlightLikelihood )

Multiple target tracking - update turning flight model with measurement.

Parameters
aTurningFlightStateVector(turning-flight state vector)
aTurningFlightErrorCovarianceMatrix(turning-flight error covariance matrix)
aVerticalErrorCovarianceMatrix(vertical error covariance matrix)
aVerticalFlightInformationState(vertical-flight information state)
aTrack(track header)
aMeasurement(measurement header block)
aDtTime difference between measurment and last track update.
aTurningFlightLikelihood(likelihood of turning-flight)

References MTT_RadarMeasurement::GetData(), MTT_RadarMeasurement::Data::mAzimuth, MTT_RadarMeasurement::Data::mAzimuthStDev, MTT_Measurement::mDataAvailable, MTT_RadarMeasurement::Data::mElevation, MTT_RadarMeasurement::Data::mRange, MTT_RadarMeasurement::Data::mRangeRate, MTT_RadarMeasurement::Data::mRangeRateStDev, MTT_RadarMeasurement::Data::mRangeStDev, MTT_RadarMeasurement::Data::mSensorLocation, MTT_RadarMeasurement::Data::mSensorVelocity, mtttfp(), and MTT_Track::mVerticalChannelActive.

Referenced by mttuat().

◆ mtttfp()

void MTT::mtttfp ( double aDt,
UtMatrixd & aCovarianceMatrix,
UtMatrixd & aStateVector )

Multiple target tracking - propagate tf states.

Parameters
aDtDelta time between measurment and last track update.
aCovarianceMatrix(covariance matrix)
aStateVector(state vector)

Referenced by mttftf(), mttgtt(), mtttfe(), mtttfm(), mtttfq(), mtttfs_Correlation(), mttuat(), and mttuhf().

◆ mtttfq()

void MTT::mtttfq ( const UtMatrixd & aTurningFlightState,
const UtMatrixd & aTurningFlightErrorCovariance,
const UtMatrixd & aVerticalErrorCovariance,
const UtMatrixd & aVerticalFlightState,
const MTT_Track & aTrack,
const MTT_Measurement & aMeasurement,
const double & aDt,
double & aHypothesisTestValue,
double & aInnovationValue )

Multiple target tracking - gate querry turning flight.

Parameters
aTurningFlightState(turning flight state vector)
aTurningFlightErrorCovariance(turning flight error covariance matrix)
aVerticalErrorCovariance(vertical error covariance matrix)
aVerticalFlightState(vertical-flight information state)
aTrack(track header)
aMeasurement(measurement header)
aDtTime difference between measurment and last track update.
aHypothesisTestValueTODO_MIKE Please document.
aInnovationValue(hypothesis test value)

References MTT_RadarMeasurement::GetData(), MTT_RadarMeasurement::Data::mAzimuth, MTT_RadarMeasurement::Data::mAzimuthStDev, MTT_Measurement::mDataAvailable, MTT_RadarMeasurement::Data::mElevation, MTT_RadarMeasurement::Data::mRange, MTT_RadarMeasurement::Data::mRangeStDev, MTT_RadarMeasurement::Data::mSensorLocation, mtttfp(), and MTT_Track::mVerticalChannelActive.

Referenced by mttgtm().

◆ mtttfs_Correlation()

void MTT::mtttfs_Correlation ( double aSimTime,
const MTT_PerceivedCluster & aNonlocalTrack,
MTT_ActiveTrack::Data & aTempActiveData,
MTT_ActiveTrack *& aLocalTrackPtr )

Multiple target tracking - track fusion system (correlation).

Parameters
aSimTimeThe current simulation time in seconds.
aNonlocalTrackA new target perception data.
aTempActiveDataTemp mtt header (383) data.
aLocalTrackPtrActive track (384).

!!!(mjm) Added the following line (error- todo report)

References WsfObserver::ActiveTrackDropped(), WsfObserver::ActiveTrackInitiated(), MTT_ActiveTrack::GetData(), MTT_Track::GetId(), MTT_Track::mAssignmentId, MTT_PerceivedCluster::mCombinedTrackPtr, MTT_NonlocalTrack::mFilter, MTT_NonlocalTrack::Filter::mFilteredState, MTT_ActiveTrack::Data::mFilterStates, MTT_NonlocalTrack::mHasVerticalData, MTT_ActiveTrack::Data::mHorizontalInfoMatrix, MTT_NonlocalTrack::Filter::mInformationMatrix, MTT_PerceivedCluster::mLastOriginatorId, MTT_PerceivedCluster::mLastSensorId, MTT_Track::mOriginatorId, MTT_NonlocalTrack::Filter::mPreviousFilteredState, MTT_ActiveTrack::Data::mPreviousFilterStates, MTT_ActiveTrack::Data::mPreviousHorizontalMatrix, MTT_NonlocalTrack::Filter::mPreviousInformationMatrix, MTT_Track::mSensorId, MTT_ActiveTrack::Data::mStraightFlightModeProbability, MTT_Track::mTrackId, mttalt(), mttgtt(), mtttfp(), mttuvp(), MTT_ActiveTrack::Data::mTurningFlightModeProbability, MTT_NonlocalTrack::Filter::mUpdateTime, MTT_Track::mUpdateTime, MTT_Track::mVerticalChannelActive, MTT_Track::mVerticalChannelUpdateTime, MTT_ActiveTrack::Data::mVerticalInfoMatrix, MTT_NonlocalTrack::Filter::mVerticalInformationMatrix, MTT_ActiveTrack::Data::mVerticalState, MTT_NonlocalTrack::Filter::mX_Acceleration, MTT_NonlocalTrack::Filter::mY_Acceleration, and MTT_ActiveTrack::SetData().

Referenced by MTT_Correlate().

◆ mtttfs_Fusion()

void MTT::mtttfs_Fusion ( double aSimTime,
const MTT_PerceivedCluster & aNonlocalTrack,
MTT_ActiveTrack::Data & aTempActiveData,
MTT_ActiveTrack *& aLocalTrackPtr )

Multiple target tracking - track fusion system (fusion).

Parameters
aSimTimeThe current simulation time in seconds.
aNonlocalTrackA new target perception data.
aTempActiveDataTemp mtt header (383) data.
aLocalTrackPtrActive track (384).

References mtttfe(), and MTT_Track::mUpdateTime.

Referenced by MTT_Fuse().

◆ mttuat()

◆ mttuhf()

◆ mttuhi()

void MTT::mttuhi ( double aDt,
const UtMatrixd & aHorizontalAcceleration,
UtMatrixd & aHorizontalInfoMatrix,
UtMatrixd & aHorizontalState,
const UtMatrixd & aConnectionMatrix,
const UtMatrixd & aConnectionMatrixTranspose,
const UtMatrixd & aDxDyCovariance,
double aSensorLocationX,
double aSensorLocationY,
double aDx,
double aDy,
int aTrackType )

Multiple target tracking - update information filter.

References pi.

Referenced by mttcct(), and mttet().

◆ mttuvi()

void MTT::mttuvi ( double aDt,
const UtMatrixd & aVerticalInfoFilter,
UtMatrixd & aVerticalInfoMatrix,
UtMatrixd & aVerticalState,
const UtMatrixd & aVerticalCandidateInfoFilter,
double aSensorLocationZ,
double aTargetLocationZ,
unsigned aRangeValid,
unsigned aElevationValid,
int aTrackType )

Multiple target tracking - update vertical info filter.

References mttuvp(), and pi.

Referenced by mttcct(), mttet(), mttuat(), and mttuhf().

◆ mttuvp()

void MTT::mttuvp ( double aDt,
const UtMatrixd & aVerticalInfoFilter,
UtMatrixd & aVerticalInfoMatrix,
UtMatrixd & aVerticalState,
int aTrackType )

Multiple target tracking - update vertical info filter.

Referenced by mtttfe(), mtttfs_Correlation(), and mttuvi().

◆ operator=()

MTT & MTT::operator= ( const MTT & )
delete

References MTT().

◆ ProcessInput()

bool MTT::ProcessInput ( UtInput & aInput)

Process input from a generic source.

Parameters
aInputThe input source.

◆ RemoveSavedData()

bool MTT::RemoveSavedData ( int aMTT_TrackId,
MTT_PerceivedCluster *& aNonLocalTrackPtr,
MTT_ActiveTrack::Data *& aTempDataPtr,
MTT_ActiveTrack *& aLocalTrackPtr )

Remove data saved between correlation and fusion steps. The data should be deleted after use.

◆ SaveData()

void MTT::SaveData ( MTT_PerceivedCluster * aNonLocalTrackPtr,
MTT_ActiveTrack::Data * aTempData,
MTT_ActiveTrack * aLocalTrackPtr )

Save temporary data from the correlation step, that is needed for fusion.

References MTT_Track::mTrackId.

◆ SetParameters()

void MTT::SetParameters ( const MTT_Parameters & aParameters)
inline

◆ SetTrackManager()

void MTT::SetTrackManager ( WsfTrackManager * aTrackManager)

Called from MTT_Fusion/MTT_Correlation during initialization.

References WsfMTT_Interface::Find(), WsfTrackManager::GetSimulation(), and mHF_Correlator.

Member Data Documentation

◆ mHF_Correlator

WsfPerfectCorrelation MTT::mHF_Correlator

Referenced by MTT(), MTT(), and SetTrackManager().


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved