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) |
Public Member Functions inherited from ns3::UanPhyPer | |
virtual void | Clear (void) |
virtual void | DoDispose (void) |
Public Member Functions inherited from ns3::Object | |
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) |
Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
Public Member Functions inherited from ns3::ObjectBase | |
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 Public Member Functions inherited from ns3::UanPhyPer | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::Object | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
static void | Cleanup (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Private Member Functions | |
double | NChooseK (uint32_t n, uint32_t k) |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::Object | |
Object (const Object &o) | |
virtual void | DoInitialize (void) |
virtual void | NotifyNewAggregate (void) |
Protected Member Functions inherited from ns3::ObjectBase | |
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().