Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals

TDSPMultiEcho Class Reference

#include <TDSPMultiEcho.h>

Inheritance diagram for TDSPMultiEcho:

TDSPLTVChannel TDSPOutput1 TDSPBlockOperation TDSPOperator TQQObject

Public Member Functions

 TDSPMultiEcho (char *name="", char *opt="", UInt_t numEcho=50, Double_t symRate=1.0e6, Double_t maxdoppler=100./3.6/3.0e8 *5200.*1.0e6)
 ~TDSPMultiEcho ()
virtual void SetBlockLen (Int_t bl)
virtual Int_t GetBlockLen ()
virtual void Print ()
virtual void ls ()
void SetOption (Option_t *o)
void SetNumEchos (UInt_t N)
void SetNumSlices (UInt_t N)
void SetSymbolRate (Double_t s)
void SetSymbolRateMHz (Double_t s)
void SetOverSampling (UInt_t s)
void SetMaxDoppler (Double_t d)
void SetSpeed (Double_t v)
void SetSpeedKMH (Double_t v)
void SetCarrierFrequency (Double_t f)
void SetCarrierFrequencyMHz (Double_t f)
void SetCarrierFrequencyGHz (Double_t f)
virtual void ChangeRepresentation ()
 Force a change of the channel representation.

TArrayD * GetTaus () const
virtual Double_t GetMinTau ()
virtual Double_t GetMaxTau ()
virtual Double_t GetTauRange ()
virtual Double_t GetMinTauRange ()
virtual Double_t GetMaxTauRange ()
UInt_t GetNumEchos () const
Double_t GetSymbolRate () const
Double_t GetSymbolRateMHz ()
Double_t GetSampleRate ()
Double_t GetSampleRateMHz ()
UInt_t GetOverSampling () const
Double_t GetMaxDoppler () const
UInt_t GetNumSlices () const
Double_t GetSpeed ()
Double_t GetSpeedKMH ()
Double_t GetCarrierFrequency () const
Double_t GetCarrierFrequencyMHz ()
Double_t GetCarrierFrequencyGHz ()
virtual Double_t GetProbability (Double_t tau)
TGraph * Graph (TGraph *in=NULL, Double_t x0=-9999, Double_t x1=-9999, UInt_t num=100)
TMultiGraph * MultiGraph (TMultiGraph *in=NULL, Double_t x0=-9999, Double_t x1=-9999, UInt_t num=100)
void Draw (Option_t *o="al", Double_t x0=-9999, Double_t x1=-9999, UInt_t num=100)
TDSPMatrixGetTransferFunction ()
 returns h(t,f)

TDSPMatrixGetScatteringFunction ()
 return C_H(tau,nu)

TDSPMatrixCreateImpulseResponse (TDSPMatrix *out=NULL)
 creates h(t,tau)

TDSPMatrixCreateTransferFunction (TDSPMatrix *out=NULL)
 creates h(t,f)

TDSPMatrixCreateScatteringFunction (TDSPMatrix *out=NULL)
 creates C_H(tau,nu)

TH1F * Fill (UInt_t num=1, TH1F *h=NULL)
 fills num representation into a histogram


Protected Member Functions

void Add (TDSPSingleEcho *e)
void SetModel (UInt_t ModelGroup, UInt_t Model)
 Initialize a model.

void CleanModel ()
 Clean the model.


Protected Attributes

UInt_t fNumClusters
 Number of clusters to manage.

UInt_t fModelGroup
 Modelgroups.

UInt_t fModel
 Model.

UInt_t fNumEchos
 number of Echos

Double_t fSymbolRate
 Symbol sampling rate.

UInt_t fOverSampling
 Oversampling Factor.

Double_t fMaxDoppler
 Maximum Doppler frequency fDmax := v*f0/c0.

UInt_t fNumSlices
 Number of points in the time to determine the impulse response.

Double_t fCarrierFreq
 Carrier Frequency in Hz.

TList * fListOfEchos
 the List of the Single Echos

TArrayD * fTaus
 The mom. representation of all echo arrivals.

TArrayI * fDiscreteTaus
 The mom. representation of all quantisized echo arrivals.

TArrayD * fPhase
 The mom. representation of all phases.

TArrayD * fDoppler
 The mom. representation of all doppler frequencies.

TDSPVectorfFilter
 band limiting filter

TDSPMatrixfImpulseResponse
 time-variant impulse response h(t,tau)

TDSPMatrixfTransferFunction
 the time-variant transfer function h(t,f)

TDSPMatrixfScatteringFunction
 the scattering function C_H(tau,nu)

Bool_t fHaveRepresentation
 ChangeRepresentation already called ?

Bool_t fHaveImpulseResponse
 fImpulseResponse uptodate ?

Bool_t fHaveTransferFunction
 fTransferFunction uptodate ?

Bool_t fRandomPhases
 Use the random phases of the echos ?


Constructor & Destructor Documentation

TDSPMultiEcho::TDSPMultiEcho char *  name = "",
char *  opt = "",
UInt_t  numEcho = 50,
Double_t  symRate = 1.0e6,
Double_t  maxdoppler = 100./3.6/3.0e8 *5200.*1.0e6
 

TDSPMultiEcho::~TDSPMultiEcho  ) 
 


Member Function Documentation

void TDSPMultiEcho::Add TDSPSingleEcho e  )  [inline, protected]
 

Definition at line 107 of file TDSPMultiEcho.h.

References fListOfEchos, and fNumClusters.

00107 { fListOfEchos->Add(e);fNumClusters=fListOfEchos->GetSize();};

virtual void TDSPMultiEcho::ChangeRepresentation  )  [virtual]
 

Force a change of the channel representation.

Reimplemented from TDSPLTVChannel.

void TDSPMultiEcho::CleanModel  )  [protected]
 

Clean the model.

TDSPMatrix* TDSPMultiEcho::CreateImpulseResponse TDSPMatrix out = NULL  )  [virtual]
 

creates h(t,tau)

Reimplemented from TDSPLTVChannel.

TDSPMatrix* TDSPMultiEcho::CreateScatteringFunction TDSPMatrix out = NULL  ) 
 

creates C_H(tau,nu)

TDSPMatrix* TDSPMultiEcho::CreateTransferFunction TDSPMatrix out = NULL  ) 
 

creates h(t,f)

void TDSPMultiEcho::Draw Option_t *  o = "al",
Double_t  x0 = -9999,
Double_t  x1 = -9999,
UInt_t  num = 100
 

TH1F* TDSPMultiEcho::Fill UInt_t  num = 1,
TH1F *  h = NULL
 

fills num representation into a histogram

virtual Int_t TDSPMultiEcho::GetBlockLen  )  [inline, virtual]
 

Reimplemented from TDSPLTVChannel.

Definition at line 122 of file TDSPMultiEcho.h.

References GetNumSlices().

00122 { return GetNumSlices();};

Double_t TDSPMultiEcho::GetCarrierFrequency  )  const [inline]
 

Definition at line 158 of file TDSPMultiEcho.h.

References fCarrierFreq.

Referenced by GetCarrierFrequencyGHz(), and GetCarrierFrequencyMHz().

00158 { return fCarrierFreq;};

Double_t TDSPMultiEcho::GetCarrierFrequencyGHz  )  [inline]
 

Definition at line 160 of file TDSPMultiEcho.h.

References GetCarrierFrequency().

00160 { return GetCarrierFrequency()/1.0e9;};

Double_t TDSPMultiEcho::GetCarrierFrequencyMHz  )  [inline]
 

Definition at line 159 of file TDSPMultiEcho.h.

References GetCarrierFrequency().

00159 { return GetCarrierFrequency()/1.0e6;};

Double_t TDSPMultiEcho::GetMaxDoppler  )  const [inline]
 

Definition at line 154 of file TDSPMultiEcho.h.

References fMaxDoppler.

00154 { return fMaxDoppler;}

virtual Double_t TDSPMultiEcho::GetMaxTau  )  [virtual]
 

virtual Double_t TDSPMultiEcho::GetMaxTauRange  )  [virtual]
 

virtual Double_t TDSPMultiEcho::GetMinTau  )  [virtual]
 

virtual Double_t TDSPMultiEcho::GetMinTauRange  )  [virtual]
 

UInt_t TDSPMultiEcho::GetNumEchos  )  const [inline]
 

Definition at line 148 of file TDSPMultiEcho.h.

References fNumEchos.

00148 { return fNumEchos;};

UInt_t TDSPMultiEcho::GetNumSlices  )  const [inline]
 

Definition at line 155 of file TDSPMultiEcho.h.

References fNumSlices.

Referenced by GetBlockLen().

00155 { return fNumSlices;};

UInt_t TDSPMultiEcho::GetOverSampling  )  const [inline]
 

Definition at line 153 of file TDSPMultiEcho.h.

References fOverSampling.

00153 { return fOverSampling;};

virtual Double_t TDSPMultiEcho::GetProbability Double_t  tau  )  [virtual]
 

Double_t TDSPMultiEcho::GetSampleRate  )  [inline]
 

Definition at line 151 of file TDSPMultiEcho.h.

References fOverSampling, and GetSymbolRate().

00151 { return GetSymbolRate()*fOverSampling;};

Double_t TDSPMultiEcho::GetSampleRateMHz  )  [inline]
 

Definition at line 152 of file TDSPMultiEcho.h.

References fOverSampling, and GetSymbolRateMHz().

00152 { return GetSymbolRateMHz()*fOverSampling;};

TDSPMatrix* TDSPMultiEcho::GetScatteringFunction  ) 
 

return C_H(tau,nu)

Double_t TDSPMultiEcho::GetSpeed  )  [inline]
 

Definition at line 156 of file TDSPMultiEcho.h.

References fCarrierFreq, and fMaxDoppler.

Referenced by GetSpeedKMH().

00156 { return fMaxDoppler*3.0e8/fCarrierFreq;};

Double_t TDSPMultiEcho::GetSpeedKMH  )  [inline]
 

Definition at line 157 of file TDSPMultiEcho.h.

References GetSpeed().

00157 { return GetSpeed()/1000.*3600.;};

Double_t TDSPMultiEcho::GetSymbolRate  )  const [inline]
 

Definition at line 149 of file TDSPMultiEcho.h.

References fSymbolRate.

Referenced by GetSampleRate(), and GetSymbolRateMHz().

00149 { return fSymbolRate;};

Double_t TDSPMultiEcho::GetSymbolRateMHz  )  [inline]
 

Definition at line 150 of file TDSPMultiEcho.h.

References GetSymbolRate().

Referenced by GetSampleRateMHz().

00150 { return GetSymbolRate()/1.0e6;};

virtual Double_t TDSPMultiEcho::GetTauRange  )  [virtual]
 

TArrayD* TDSPMultiEcho::GetTaus  )  const [inline]
 

Definition at line 140 of file TDSPMultiEcho.h.

References fTaus.

00140 { return fTaus;};

TDSPMatrix* TDSPMultiEcho::GetTransferFunction  ) 
 

returns h(t,f)

TGraph* TDSPMultiEcho::Graph TGraph *  in = NULL,
Double_t  x0 = -9999,
Double_t  x1 = -9999,
UInt_t  num = 100
 

virtual void TDSPMultiEcho::ls  )  [virtual]
 

TMultiGraph* TDSPMultiEcho::MultiGraph TMultiGraph *  in = NULL,
Double_t  x0 = -9999,
Double_t  x1 = -9999,
UInt_t  num = 100
 

virtual void TDSPMultiEcho::Print  )  [virtual]
 

Reimplemented from TDSPLTVChannel.

virtual void TDSPMultiEcho::SetBlockLen Int_t  bl  )  [inline, virtual]
 

Reimplemented from TDSPLTVChannel.

Definition at line 121 of file TDSPMultiEcho.h.

References SetNumSlices().

00121 { SetNumSlices(bl);};

void TDSPMultiEcho::SetCarrierFrequency Double_t  f  )  [inline]
 

Definition at line 135 of file TDSPMultiEcho.h.

References fCarrierFreq.

Referenced by SetCarrierFrequencyGHz(), and SetCarrierFrequencyMHz().

00135 { fCarrierFreq=f;}; 

void TDSPMultiEcho::SetCarrierFrequencyGHz Double_t  f  )  [inline]
 

Definition at line 137 of file TDSPMultiEcho.h.

References SetCarrierFrequency().

00137 { SetCarrierFrequency(f*1.0e9); }; 

void TDSPMultiEcho::SetCarrierFrequencyMHz Double_t  f  )  [inline]
 

Definition at line 136 of file TDSPMultiEcho.h.

References SetCarrierFrequency().

00136 { SetCarrierFrequency(f*1.0e6); }; 

void TDSPMultiEcho::SetMaxDoppler Double_t  d  )  [inline]
 

Definition at line 132 of file TDSPMultiEcho.h.

References fMaxDoppler.

Referenced by SetSpeed().

00132 { fMaxDoppler=d;};

void TDSPMultiEcho::SetModel UInt_t  ModelGroup,
UInt_t  Model
[protected]
 

Initialize a model.

void TDSPMultiEcho::SetNumEchos UInt_t  N  ) 
 

void TDSPMultiEcho::SetNumSlices UInt_t  N  )  [inline]
 

Definition at line 128 of file TDSPMultiEcho.h.

References fNumSlices.

Referenced by SetBlockLen().

00128 { fNumSlices=N;};

void TDSPMultiEcho::SetOption Option_t *  o  ) 
 

Reimplemented from TDSPLTVChannel.

void TDSPMultiEcho::SetOverSampling UInt_t  s  )  [inline]
 

Definition at line 131 of file TDSPMultiEcho.h.

References fOverSampling.

00131 { fOverSampling=s;};

void TDSPMultiEcho::SetSpeed Double_t  v  )  [inline]
 

Definition at line 133 of file TDSPMultiEcho.h.

References fCarrierFreq, and SetMaxDoppler().

Referenced by SetSpeedKMH().

00133 { SetMaxDoppler(v/3.0e8*fCarrierFreq);}; 

void TDSPMultiEcho::SetSpeedKMH Double_t  v  )  [inline]
 

Definition at line 134 of file TDSPMultiEcho.h.

References SetSpeed().

00134 { SetSpeed(v*1000./3600.);}; 

void TDSPMultiEcho::SetSymbolRate Double_t  s  )  [inline]
 

Definition at line 129 of file TDSPMultiEcho.h.

References fSymbolRate.

Referenced by SetSymbolRateMHz().

00129 { fSymbolRate=s;};

void TDSPMultiEcho::SetSymbolRateMHz Double_t  s  )  [inline]
 

Definition at line 130 of file TDSPMultiEcho.h.

References SetSymbolRate().

00130 { SetSymbolRate(s*1.0e6);};


Field Documentation

Double_t TDSPMultiEcho::fCarrierFreq [protected]
 

Carrier Frequency in Hz.

Definition at line 94 of file TDSPMultiEcho.h.

Referenced by GetCarrierFrequency(), GetSpeed(), SetCarrierFrequency(), and SetSpeed().

TArrayI* TDSPMultiEcho::fDiscreteTaus [protected]
 

The mom. representation of all quantisized echo arrivals.

Definition at line 98 of file TDSPMultiEcho.h.

TArrayD* TDSPMultiEcho::fDoppler [protected]
 

The mom. representation of all doppler frequencies.

Definition at line 100 of file TDSPMultiEcho.h.

TDSPVector* TDSPMultiEcho::fFilter [protected]
 

band limiting filter

Definition at line 102 of file TDSPMultiEcho.h.

Bool_t TDSPMultiEcho::fHaveImpulseResponse [protected]
 

fImpulseResponse uptodate ?

Reimplemented from TDSPLTVChannel.

Definition at line 112 of file TDSPMultiEcho.h.

Bool_t TDSPMultiEcho::fHaveRepresentation [protected]
 

ChangeRepresentation already called ?

Reimplemented from TDSPLTVChannel.

Definition at line 111 of file TDSPMultiEcho.h.

Bool_t TDSPMultiEcho::fHaveTransferFunction [protected]
 

fTransferFunction uptodate ?

Definition at line 113 of file TDSPMultiEcho.h.

TDSPMatrix* TDSPMultiEcho::fImpulseResponse [protected]
 

time-variant impulse response h(t,tau)

Reimplemented from TDSPLTVChannel.

Definition at line 103 of file TDSPMultiEcho.h.

TList* TDSPMultiEcho::fListOfEchos [protected]
 

the List of the Single Echos

Definition at line 96 of file TDSPMultiEcho.h.

Referenced by Add().

Double_t TDSPMultiEcho::fMaxDoppler [protected]
 

Maximum Doppler frequency fDmax := v*f0/c0.

Definition at line 92 of file TDSPMultiEcho.h.

Referenced by GetMaxDoppler(), GetSpeed(), and SetMaxDoppler().

UInt_t TDSPMultiEcho::fModel [protected]
 

Model.

Definition at line 88 of file TDSPMultiEcho.h.

UInt_t TDSPMultiEcho::fModelGroup [protected]
 

Modelgroups.

Definition at line 87 of file TDSPMultiEcho.h.

UInt_t TDSPMultiEcho::fNumClusters [protected]
 

Number of clusters to manage.

Definition at line 86 of file TDSPMultiEcho.h.

Referenced by Add().

UInt_t TDSPMultiEcho::fNumEchos [protected]
 

number of Echos

Definition at line 89 of file TDSPMultiEcho.h.

Referenced by GetNumEchos().

UInt_t TDSPMultiEcho::fNumSlices [protected]
 

Number of points in the time to determine the impulse response.

Definition at line 93 of file TDSPMultiEcho.h.

Referenced by GetNumSlices(), and SetNumSlices().

UInt_t TDSPMultiEcho::fOverSampling [protected]
 

Oversampling Factor.

Definition at line 91 of file TDSPMultiEcho.h.

Referenced by GetOverSampling(), GetSampleRate(), GetSampleRateMHz(), and SetOverSampling().

TArrayD* TDSPMultiEcho::fPhase [protected]
 

The mom. representation of all phases.

Definition at line 99 of file TDSPMultiEcho.h.

Bool_t TDSPMultiEcho::fRandomPhases [protected]
 

Use the random phases of the echos ?

Definition at line 114 of file TDSPMultiEcho.h.

TDSPMatrix* TDSPMultiEcho::fScatteringFunction [protected]
 

the scattering function C_H(tau,nu)

Definition at line 105 of file TDSPMultiEcho.h.

Double_t TDSPMultiEcho::fSymbolRate [protected]
 

Symbol sampling rate.

Definition at line 90 of file TDSPMultiEcho.h.

Referenced by GetSymbolRate(), and SetSymbolRate().

TArrayD* TDSPMultiEcho::fTaus [protected]
 

The mom. representation of all echo arrivals.

Definition at line 97 of file TDSPMultiEcho.h.

Referenced by GetTaus().

TDSPMatrix* TDSPMultiEcho::fTransferFunction [protected]
 

the time-variant transfer function h(t,f)

Definition at line 104 of file TDSPMultiEcho.h.


The documentation for this class was generated from the following file:
Generated on Fri Apr 23 16:24:02 2004 by doxygen 1.3.2