ns3::FriisPropagationLossModel Class Reference

a Friis propagation loss model More...

#include <propagation-loss-model.h>

Inheritance diagram for ns3::FriisPropagationLossModel:

Inheritance graph
[legend]
Collaboration diagram for ns3::FriisPropagationLossModel:

Collaboration graph
[legend]

List of all members.

Public Member Functions

void SetLambda (double frequency, double speed)
void SetLambda (double lambda)
void SetSystemLoss (double systemLoss)
void SetMinDistance (double minDistance)
double GetMinDistance (void) const
double GetLambda (void) const
double GetSystemLoss (void) const

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::FriisPropagationLossModel.


Detailed Description

a Friis propagation loss model

The Friis propagation loss model was first described in "A Note on a Simple Transmission Formula", by "Harald T. Friis".

The original equation was described as: $ \frac{P_r}{P_t} = \frac{A_r A_t}{d^2\lambda^2} $ with the following equation for the case of an isotropic antenna with no heat loss: $ A_{isotr.} = \frac{\lambda^2}{4\pi} $

The final equation becomes: $ \frac{P_r}{P_t} = \frac{\lambda^2}{(4 \pi d)^2} $

Modern extensions to this original equation are: $ P_r = \frac{P_t G_t G_r \lambda^2}{(4 \pi d)^2 L}$

With:

This model is invalid for small distance values. The current implementation returns the txpower as the rxpower for any distance smaller than MinDistance.


Member Function Documentation

double ns3::FriisPropagationLossModel::GetLambda ( void   )  const

Returns:
the current wavelength (m)

double ns3::FriisPropagationLossModel::GetMinDistance ( void   )  const

Returns:
the minimum distance.

double ns3::FriisPropagationLossModel::GetSystemLoss ( void   )  const

Returns:
the current system loss (dimention-less)

static TypeId ns3::FriisPropagationLossModel::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::FriisPropagationLossModel.

Attributes defined for this type:

  • Lambda: The wavelength (default is 5.15 GHz at 300 000 km/s).
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 0.0582524
    • Flags: construct write read
  • SystemLoss: The system loss
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 1
    • Flags: construct write read
  • MinDistance: The distance under which the propagation model refuses to give results (m)
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 0.5
    • Flags: construct write read
No TraceSources defined for this type.

Reimplemented from ns3::PropagationLossModel.

void ns3::FriisPropagationLossModel::SetLambda ( double  lambda  ) 

Parameters:
lambda (m) the wavelength
Set the main wavelength used in the Friis model calculation.

void ns3::FriisPropagationLossModel::SetLambda ( double  frequency,
double  speed 
)

Parameters:
frequency (Hz)
speed (m/s)
Set the main wavelength used in the Friis model calculation.

void ns3::FriisPropagationLossModel::SetMinDistance ( double  minDistance  ) 

Parameters:
minDistance the minimum distance
Below this distance, the txpower is returned unmodified as the rxpower.

void ns3::FriisPropagationLossModel::SetSystemLoss ( double  systemLoss  ) 

Parameters:
systemLoss (dimension-less)
Set the system loss used by the Friis propagation model.


The documentation for this class was generated from the following files:

Generated on Fri Apr 9 15:01:09 2010 for NS-3 by  doxygen 1.5.8