Packet error rate calculation assuming WHOI Micromodem like PHY Calculates PER assuming rate 1/2 convolutional code with constraint length 9 with soft decision viterbi decoding and a CRC capable of correcting 1 bit error. More...
#include <uan-phy-gen.h>
Public Member Functions | |
UanPhyPerUmodem () | |
virtual | ~UanPhyPerUmodem () |
virtual double | CalcPer (Ptr< Packet > pkt, double sinrDb, UanTxMode mode) |
![]() | |
virtual void | Clear (void) |
virtual void | DoDispose (void) |
![]() | |
Object () | |
virtual | ~Object () |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Initialize (void) |
![]() | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
![]() | |
virtual | ~ObjectBase () |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static void | Cleanup (void) |
![]() | |
static TypeId | GetTypeId (void) |
Private Member Functions | |
double | NChooseK (uint32_t n, uint32_t k) |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
virtual void | DoInitialize (void) |
virtual void | NotifyNewAggregate (void) |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
Packet error rate calculation assuming WHOI Micromodem like PHY Calculates PER assuming rate 1/2 convolutional code with constraint length 9 with soft decision viterbi decoding and a CRC capable of correcting 1 bit error.
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 60 of file uan-phy-gen.h.
ns3::UanPhyPerUmodem::UanPhyPerUmodem | ( | ) |
Definition at line 243 of file uan-phy-gen.cc.
|
virtual |
Definition at line 247 of file uan-phy-gen.cc.
This implementation uses calculations for binary FSK modulation coded by a rate 1/2 convolutional code with constraint length = 9 and a viterbi decoder and finally a CRC capable of correcting one bit error. These equations can be found in the book, Digital Communications, by Proakis (Any version I think)
pkt | Packet which is under consideration |
sinrDb | SINR at receiver |
mode | TX mode used to transmit packet |
Implements ns3::UanPhyPer.
Definition at line 282 of file uan-phy-gen.cc.
References ns3::Packet::GetSize(), and NChooseK().
Referenced by UanTest::DoRun().
|
static |
Definition at line 252 of file uan-phy-gen.cc.
References ns3::TypeId::SetParent().
|
private |
Definition at line 262 of file uan-phy-gen.cc.
Referenced by CalcPer().