#include <uan-prop-model.h>
List of all members.
Public Types |
typedef std::vector< Tap >
::const_iterator | Iterator |
| Iterator is a standard template library constant interator.
|
Public Member Functions |
| UanPdp () |
| Create empty PDP object.
|
| UanPdp (std::vector< Tap > taps, Time resolution) |
| Create PDP object from a vector of Tap objects.
|
| UanPdp (std::vector< std::complex< double > > arrivals, Time resolution) |
| Create PDP object from vector of arrival amplitudes.
|
| UanPdp (std::vector< double > arrivals, Time resolution) |
| Create PDP object from real valued arrival amplitudes.
|
void | SetTap (std::complex< double > arrival, uint32_t index) |
void | SetNTaps (uint32_t nTaps) |
void | SetResolution (Time resolution) |
Iterator | GetBegin (void) const |
Iterator | GetEnd (void) const |
uint32_t | GetNTaps (void) const |
const Tap & | GetTap (uint32_t i) const |
Time | GetResolution (void) const |
double | SumTapsNc (Time begin, Time end) const |
std::complex< double > | SumTapsC (Time begin, Time end) const |
double | SumTapsFromMaxNc (Time delay, Time duration) const |
std::complex< double > | SumTapsFromMaxC (Time delay, Time duration) const |
Static Public Member Functions |
static UanPdp | CreateImpulsePdp (void) |
Friends |
std::ostream & | operator<< (std::ostream &os, UanPdp &pdp) |
| Writes PDP to stream as list of arrivals.
|
std::istream & | operator>> (std::istream &is, UanPdp &pdp) |
Detailed Description
Container class to describe power delay profile returned from UAN propagation models using tapped delay line model. This should model a channel impulse response as a set of equally spaced signal arrivals.
Generally, the profile should be normalized, such that the sum of all taps should equal 1. The received signal power on any interval (t1, t2) can then be found from summing the taps on the interval and multiplying by the total received power at the receiver.
Constructor & Destructor Documentation
ns3::UanPdp::UanPdp |
( |
std::vector< Tap > |
taps, |
|
|
Time |
resolution | |
|
) |
| | |
Create PDP object from a vector of Tap objects.
- Parameters:
-
| taps | Taps to include in this PDP |
| resolution | Resolution of PDP object |
ns3::UanPdp::UanPdp |
( |
std::vector< std::complex< double > > |
arrivals, |
|
|
Time |
resolution | |
|
) |
| | |
Create PDP object from vector of arrival amplitudes.
- Parameters:
-
| arrivals | Vector of complex amplitude arrivals |
| resolution | Time duration between arrivals in vector |
ns3::UanPdp::UanPdp |
( |
std::vector< double > |
arrivals, |
|
|
Time |
resolution | |
|
) |
| | |
Create PDP object from real valued arrival amplitudes.
- Parameters:
-
| arrivals | vector of real valued arrivals |
| resolution | Time duration between arrivals in vector |
Member Function Documentation
static UanPdp ns3::UanPdp::CreateImpulsePdp |
( |
void |
|
) |
[static] |
- Returns:
- A PDP with a singlue unit impulse arrival at time 0
Iterator ns3::UanPdp::GetBegin |
( |
void |
|
) |
const |
- Returns:
- Iterator positioned at first arrival
Iterator ns3::UanPdp::GetEnd |
( |
void |
|
) |
const |
- Returns:
- Iterator positioned after last arrival
uint32_t ns3::UanPdp::GetNTaps |
( |
void |
|
) |
const |
- Returns:
- Number of taps in PDP
Time ns3::UanPdp::GetResolution |
( |
void |
|
) |
const |
- Returns:
- Resolution of PDP (time duration between arrivals)
const Tap& ns3::UanPdp::GetTap |
( |
uint32_t |
i |
) |
const |
- Returns:
- Tap object at index i
- Parameters:
-
| i | Index number of tap to return (0 based) |
void ns3::UanPdp::SetNTaps |
( |
uint32_t |
nTaps |
) |
|
- Parameters:
-
| nTaps | number of taps in this PDP |
void ns3::UanPdp::SetResolution |
( |
Time |
resolution |
) |
|
- Parameters:
-
| resolution | Resolution of PDP (time between arrivals) |
void ns3::UanPdp::SetTap |
( |
std::complex< double > |
arrival, |
|
|
uint32_t |
index | |
|
) |
| | |
- Parameters:
-
| arrival | complex arrival value |
| index | index of arrival |
std::complex<double> ns3::UanPdp::SumTapsC |
( |
Time |
begin, |
|
|
Time |
end | |
|
) |
| | const |
- Parameters:
-
| begin | Time value to begin summing arrivals |
| end | Time value to end summing arrivals |
- Returns:
- Returns coherent sum of arrivals between two time values
Assuming that Tap at index 0 arrives at time 0, this function sums coherently (sums amplitude of arrivals considering phase difference) all arrivals between a start and end time.
std::complex<double> ns3::UanPdp::SumTapsFromMaxC |
( |
Time |
delay, |
|
|
Time |
duration | |
|
) |
| | const |
- Parameters:
-
| delay | Time duratation after max to begin summing arrivals |
| duration | Time duration to sum arrivals for |
- Returns:
- coherent sum of arrivals after max in given window
this function sums coherently (sums amplitude of arrivals considering phase difference) all arrivals in a given duration starting the given time after the maximum amplitude arrival received
double ns3::UanPdp::SumTapsFromMaxNc |
( |
Time |
delay, |
|
|
Time |
duration | |
|
) |
| | const |
- Parameters:
-
| delay | Time duratation after max to begin summing arrivals |
| duration | Time duration to sum arrivals for |
- Returns:
- non-coherent sum of arrivals after max in given window
this function sums non-coherently (sums amplitude of arrivals ignoring phase difference) all arrivals in a given duration starting the given time after the maximum amplitude arrival received
double ns3::UanPdp::SumTapsNc |
( |
Time |
begin, |
|
|
Time |
end | |
|
) |
| | const |
- Parameters:
-
| begin | Time value to begin summing arrivals |
| end | Time value to end summing arrivals |
- Returns:
- Returns Non-coherent sum of arrivals between two time values
Assuming that Tap at index 0 arrives at time 0, this function sums non-coherently (sums amplitude of arrivals ignoring phase difference) all arrivals between a start and end time.
The documentation for this class was generated from the following file:
- src/devices/uan/model/uan-prop-model.h