Miscellaneous Communications Functions
[Communications Module]


Functions

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.

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

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 \]

.


Function Documentation

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 \]

.

Parameters:
alpha vector of $\alpha_0,...,\alpha_{n-1}$ gains (must have strictly positive elements)
P power constraint
Returns:
vector of power allocations $p_0,...,p_{n-1}$
The computational complexity of the method is $O(n^2)$ at most

References it_assert, and itpp::length().


Generated on Tue Jun 2 10:02:14 2009 for mixpp by  doxygen 1.5.8