PCSmoother Class Reference
[GPSTk data structures]

#include <PCSmoother.hpp>

Inheritance diagram for PCSmoother:

Inheritance graph
[legend]
Collaboration diagram for PCSmoother:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class smoothes the PC (ionosphere-free) code observable using the corresponding LC phase observable.

This class is meant to be used with the GNSS data structures objects found in "DataStructures" class.

A typical way to use this class follows:

   RinexObsStream rin("ebre0300.02o");

   gnssRinex gRin;

      // We MUST mark at least some cycle slips
   OneFreqCSDetector markCSL1;

   PCSmoother smoothPC;

   while(rin >> gRin)
   {
      gRin >> markCSL1 >> smoothPC;
   }

The "PCSmoother" object will visit every satellite in the GNSS data structure that is "gRin" and will smooth the PC code observation using the corresponding LC phase observation.

By default, the algorithm will check both the CSL1 and CSL2 index for cycle slip information. You can change these settings in the constructor and also using the appropriate methods.

When used with the ">>" operator, this class returns the same incoming data structure with the PC code observation smoothed (unless the resultType field is changed). Be warned that if a given satellite does not have the observations required, it will be summarily deleted from the data structure.

Another important parameter is the maxWindowSize field. By default, it is set to 100 samples. You may adjust that with the setMaxWindowSize() method:

   PCSmoother smoothPC;
   smoothPC.setMaxWindowSize(35);

A window of 100 samples is typical and appropriate when working with data sampled at 1 Hz. Note that the PC observable doesn't suffer the effect of ionosphere drift.

See also:
CodeSmoother.hpp for base class.
Warning:
Code smoothers are objets that store their internal state, so you MUST NOT use the SAME object to process DIFFERENT data streams.

Definition at line 103 of file PCSmoother.hpp.

Public Member Functions

 PCSmoother ()
 Default constructor, setting default parameters and PC and LC as observables.
 PCSmoother (const int &mwSize, const TypeID &resultT=TypeID::PC)
 Common constructor.
virtual satTypeValueMapProcess (satTypeValueMap &gData) throw (ProcessingException)
 Returns a satTypeValueMap object, adding the new data generated when calling this object.
virtual TypeID getResultType () const
 Method to get the default return type being used.
virtual PCSmoothersetResultType (const TypeID &resultT)
 Method to set the default return type to be used.
virtual int getMaxWindowSize () const
 Method to get the maximum size of filter window, in samples.
virtual PCSmoothersetMaxWindowSize (const int &maxSize)
 Method to set the maximum size of filter window, in samples.
virtual TypeID getCSFlag1 () const
 Method to get the default cycle slip type #1 being used.
virtual PCSmoothersetCSFlag1 (const TypeID &csT)
 Method to set the default cycle slip type #1 to be used.
virtual TypeID getCSFlag2 () const
 Method to get the default cycle slip type #2 being used.
virtual PCSmoothersetCSFlag2 (const TypeID &csT)
 Method to set the default cycle slip type #2 to be used.
virtual std::string getClassName (void) const
 Returns a string identifying this object.
virtual ~PCSmoother ()
 Destructor.


Constructor & Destructor Documentation

PCSmoother  )  [inline]
 

Default constructor, setting default parameters and PC and LC as observables.

Definition at line 109 of file PCSmoother.hpp.

References gpstk::codeType.

PCSmoother const int &  mwSize,
const TypeID resultT = TypeID::PC
[inline]
 

Common constructor.

Parameters:
mwSize Maximum size of filter window, in samples.
resultT TypeID where results will be stored.

Definition at line 120 of file PCSmoother.hpp.

References gpstk::codeType.

virtual ~PCSmoother  )  [inline, virtual]
 

Destructor.

Definition at line 192 of file PCSmoother.hpp.


Member Function Documentation

std::string getClassName void   )  const [virtual]
 

Returns a string identifying this object.

Reimplemented from CodeSmoother.

Definition at line 39 of file PCSmoother.cpp.

virtual TypeID getCSFlag1  )  const [inline, virtual]
 

Method to get the default cycle slip type #1 being used.

Definition at line 162 of file PCSmoother.hpp.

virtual TypeID getCSFlag2  )  const [inline, virtual]
 

Method to get the default cycle slip type #2 being used.

Definition at line 175 of file PCSmoother.hpp.

virtual int getMaxWindowSize  )  const [inline, virtual]
 

Method to get the maximum size of filter window, in samples.

Reimplemented from CodeSmoother.

Definition at line 150 of file PCSmoother.hpp.

virtual TypeID getResultType  )  const [inline, virtual]
 

Method to get the default return type being used.

Reimplemented from CodeSmoother.

Definition at line 137 of file PCSmoother.hpp.

satTypeValueMap & Process satTypeValueMap gData  )  throw (ProcessingException) [virtual]
 

Returns a satTypeValueMap object, adding the new data generated when calling this object.

Parameters:
gData Data object holding the data.

Reimplemented from CodeSmoother.

Definition at line 49 of file PCSmoother.cpp.

References gpstk::codeType, GPSTK_THROW, and gpstk::SatIDSet.

virtual PCSmoother& setCSFlag1 const TypeID csT  )  [inline, virtual]
 

Method to set the default cycle slip type #1 to be used.

Parameters:
csT Cycle slip type to be used

Definition at line 170 of file PCSmoother.hpp.

virtual PCSmoother& setCSFlag2 const TypeID csT  )  [inline, virtual]
 

Method to set the default cycle slip type #2 to be used.

Parameters:
csT Cycle slip type to be used

Definition at line 183 of file PCSmoother.hpp.

PCSmoother & setMaxWindowSize const int &  maxSize  )  [virtual]
 

Method to set the maximum size of filter window, in samples.

Parameters:
maxSize Maximum size of filter window, in samples.

Reimplemented from CodeSmoother.

Definition at line 152 of file PCSmoother.cpp.

virtual PCSmoother& setResultType const TypeID resultT  )  [inline, virtual]
 

Method to set the default return type to be used.

Parameters:
returnT TypeID to be returned

Reimplemented from CodeSmoother.

Definition at line 145 of file PCSmoother.hpp.


The documentation for this class was generated from the following files:
Generated on Mon May 20 03:31:42 2013 for GPS ToolKit Software Library by  doxygen 1.3.9.1