#include "itcomm.h" int main() { Real_Timer time; int N=10000, M=16, k=needed_bits(M); vec EbN0 = "0:2:16"; vec EN0ggr = inv_dB(EbN0)*k; vec pb(EbN0.size()); QAM qam(M); Array berc(EbN0.size()); bvec transmitted_bits, received_bits; cvec transmitted_symbols, received_symbols, noise; transmitted_bits = randb(N*k); qam.modulate_bits(transmitted_bits, transmitted_symbols); randn_c(transmitted_symbols.size(), noise); for (int i=0; i