IT++ Logo
Public Member Functions | Static Public Member Functions
itpp::BERC Class Reference

Bit Error Rate Counter (BERC) Class. More...

#include <itpp/comm/error_counters.h>

List of all members.

Public Member Functions

 BERC (int indelay=0, int inignorefirst=0, int inignorelast=0)
 Constructor for the berc class.
void count (const bvec &in1, const bvec &in2)
 Cumulative error counter.
void estimate_delay (const bvec &in1, const bvec &in2, int mindelay=-100, int maxdelay=100)
void clear ()
 Clears the bit error counter.
void report () const
 Writes an error report.
int get_delay () const
 Return the delay, assumed or estimated, between in1 and in2.
double get_errors () const
 Returns the counted number of bit errors.
double get_corrects () const
 Returns the counted number of corectly received bits.
double get_total_bits () const
 Returns the total number of bits processed.
double get_errorrate () const
 Returns the estimated bit error rate.

Static Public Member Functions

static double count_errors (const bvec &in1, const bvec &in2, int indelay=0, int inignorefirst=0, int inignorelast=0)
 static function to allow simple and fast count of bit-errors

Detailed Description

Bit Error Rate Counter (BERC) Class.

Example:

  #include <itpp/itcomm.h>

  int main() {
    //Initiate the Bit Error Counter
    BERC berc;

    //Initiate a Binary Symetric Channel with cross-over probability 0.1
    BSC binary_symetric_channel(0.1);

    bvec transmitted_bits = randb(100);
    bvec received_bits = binary_symetric_channel(transmitted_bits);

    //Count the number of bit errors
    berc.count(transmitted_bits, received_bits);

    cout << "Estimated bit error probability is " << berc.get_errorrate()
         << endl;

    return 0;
  }

Definition at line 67 of file error_counters.h.


Constructor & Destructor Documentation

itpp::BERC::BERC ( int  indelay = 0,
int  inignorefirst = 0,
int  inignorelast = 0 
)

Constructor for the berc class.

  • delay is positive if in2 is a delayed replica of in1 and negative otherwise.
  • ignorefirst and ignorelast may be used if errors in the begining and/or the end is to be ignored.

Definition at line 46 of file error_counters.cpp.


Member Function Documentation

void itpp::BERC::estimate_delay ( const bvec &  in1,
const bvec &  in2,
int  mindelay = -100,
int  maxdelay = 100 
)

Run this member function if the delay between in1 and in2 is unknown.

Definition at line 77 of file error_counters.cpp.

References itpp::abs(), itpp::elem_mult(), itpp::min(), itpp::sum(), and itpp::to_vec().

double itpp::BERC::count_errors ( const bvec &  in1,
const bvec &  in2,
int  indelay = 0,
int  inignorefirst = 0,
int  inignorelast = 0 
) [static]

static function to allow simple and fast count of bit-errors

Returns the number of errors between in1 and in2. Typical usage:

    bvec in1 = randb(100);
    bvec in2 = randb(100);
    double errors = BERC::count_errors(in1, in2);

Definition at line 119 of file error_counters.cpp.

References std::abs(), and itpp::min().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
SourceForge Logo

Generated on Tue Dec 6 2011 16:52:29 for IT++ by Doxygen 1.7.4