Miscellaneous Communications Functions
Communications Module

## Classes

class | itpp::EXIT
| EXtrinsic Information Transfer (EXIT) chart. More...
class | itpp::Multilateration
| Multilateration class for 3D indoor localization More...
class | itpp::STC
| Space Time block Codes (STC) class. More...

## Functions

bmat | itpp::graycode (int m)
| Generate Gray code of blocklength m. More...
int | itpp::hamming_distance (const bvec &a, const bvec &b)
| Calculate the Hamming distance between a and b.
int | itpp::weight (const bvec &a)
| Calculate the Hamming weight of a.
vec | itpp::waterfilling (const vec &alpha, double P)
| Compute the water-filling solution. More...

## Detailed Description

## Function Documentation

## graycode()

ITPP_EXPORT bmat itpp::graycode | ( | int | m | ) |

Generate Gray code of blocklength m.

The codes are contained as binary codewords {0,1} in the rows of the returned matrix. See also the `gray()` function in `math/scalfunc.h`.

Definition at line 39 of file commfunc.cpp.

References itpp::concat(), itpp::ones_b(), itpp::reverse(), itpp::to_bmat(), and itpp::zeros_b().

Referenced by itpp::QAM::set_M(), itpp::PSK::set_M(), itpp::PAM_c::set_M(), itpp::PAM::set_M(), itpp::ND_UPAM::set_M(), itpp::ND_UQAM::set_M(), and itpp::ND_UPSK::set_M().

## waterfilling()

ITPP_EXPORT vec itpp::waterfilling | ( | const vec & | alpha,
|  | double | P
| ) |  |

Compute the water-filling solution.

This function computes the solution of the water-filling problem

subject to

Parameters

  alpha | vector of gains (must have strictly positive elements)
  P | power constraint

Returns
  vector of power allocations

The computational complexity of the method is at most

Definition at line 82 of file commfunc.cpp.

References it_assert, and itpp::length().

Generated on Tue Aug 17 2021 10:59:15 for IT++ by Doxygen 1.9.1