IT++ 4.3.1
|
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. | |
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. | |
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 concat(), graycode(), ones_b(), reverse(), to_bmat(), and zeros_b().
Referenced by graycode(), itpp::ND_UPAM::set_M(), itpp::ND_UPSK::set_M(), itpp::ND_UQAM::set_M(), itpp::PAM::set_M(), itpp::PAM_c::set_M(), itpp::PSK::set_M(), and itpp::QAM::set_M().
ITPP_EXPORT int itpp::hamming_distance | ( | const bvec & | a, |
const bvec & | b ) |
Calculate the Hamming distance between a and b.
Definition at line 59 of file commfunc.cpp.
References it_assert_debug.
ITPP_EXPORT int itpp::weight | ( | const bvec & | a | ) |
Calculate the Hamming weight of a.
Definition at line 71 of file commfunc.cpp.
Referenced by itpp::Extended_Golay::decode().
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
\[\max_{p_0,...,p_{n-1}} \sum_{i=0}^{n-1} \log\left(1+p_i\alpha_i\right) \]
subject to
\[\sum_{i=0}^{n-1} p_i \le P \]
alpha | vector of \(\alpha_0,...,\alpha_{n-1}\) gains (must have strictly positive elements) |
P | power constraint |
The computational complexity of the method is \(O(n^2)\) at most
Definition at line 82 of file commfunc.cpp.