ND_UPAM for examples.
More...
#include <itpp/comm/modulator_nd.h>
Inheritance diagram for itpp::Modulator_ND:

Public Member Functions | |
| Modulator_ND (LLR_calc_unit llrcalc_in=LLR_calc_unit()) | |
| Constructor. | |
| ~Modulator_ND () | |
| Destructor. | |
| int | get_dim () |
| Get number of dimensions. | |
| LLR_calc_unit | get_llrcalc () const |
| Get LLR calculation unit. | |
| ivec | get_k () |
| Get number of bits per modulation symbol. | |
| ivec | get_M () |
| Get number of modulation symbols per dimension. | |
Protected Member Functions | |
| QLLRvec | probabilities (QLLR l) |
| Convert LLR to log-probabilities. | |
| Vec< QLLRvec > | probabilities (QLLRvec &l) |
| Convert LLR to log-probabilities, vector version. | |
| void | update_LLR (Vec< QLLRvec > &logP_apriori, QLLRvec &numerator, QLLRvec &denominator, ivec &s, QLLR x) |
| Update LLR (for internal use). | |
| void | update_LLR (Vec< QLLRvec > &logP_apriori, QLLRvec &numerator, QLLRvec &denominator, int s, QLLR scaled_norm, int j) |
| Update LLR, for scalar channel (for internal use). | |
Protected Attributes | |
| int | nt |
| Number of dimensions. | |
| LLR_calc_unit | llrcalc |
| LLR calculation unit. | |
| ivec | k |
| Number of bits per modulation symbol. | |
| ivec | M |
| Number of modulation symbols along each dimension. | |
| Vec< bmat > | bitmap |
| Bit mapping table (one table per dimension). | |
| Vec< ivec > | bits2symbols |
| Bit pattern in decimal form ordered and the corresponding symbols (one pattern per dimension). | |
ND_UPAM for examples.
Definition at line 49 of file modulator_nd.h.
| itpp::Modulator_ND::Modulator_ND | ( | LLR_calc_unit | llrcalc_in = LLR_calc_unit() |
) | [inline] |
| itpp::Modulator_ND::~Modulator_ND | ( | ) | [inline] |
| int itpp::Modulator_ND::get_dim | ( | ) | [inline] |
| LLR_calc_unit itpp::Modulator_ND::get_llrcalc | ( | ) | const [inline] |
| ivec itpp::Modulator_ND::get_k | ( | ) | [inline] |
Get number of bits per modulation symbol.
Definition at line 63 of file modulator_nd.h.
References k.
| ivec itpp::Modulator_ND::get_M | ( | ) | [inline] |
Get number of modulation symbols per dimension.
Definition at line 66 of file modulator_nd.h.
References M.
| QLLRvec itpp::Modulator_ND::probabilities | ( | QLLR | l | ) | [protected] |
Convert LLR to log-probabilities.
Definition at line 44 of file modulator_nd.cpp.
References itpp::LLR_calc_unit::jaclog(), and llrcalc.
Referenced by itpp::Modulator_NCD::map_demod(), itpp::Modulator_NRD::map_demod(), and probabilities().
| Vec< QLLRvec > itpp::Modulator_ND::probabilities | ( | QLLRvec & | l | ) | [protected] |
Convert LLR to log-probabilities, vector version.
Definition at line 58 of file modulator_nd.cpp.
References itpp::length(), and probabilities().
| void itpp::Modulator_ND::update_LLR | ( | Vec< QLLRvec > & | logP_apriori, | |
| QLLRvec & | numerator, | |||
| QLLRvec & | denominator, | |||
| ivec & | s, | |||
| QLLR | x | |||
| ) | [protected] |
Update LLR (for internal use).
This function updates the numerator and denominator in the expression
| logP_apriori | vector of a priori probabilities per bit | |
| numerator | the logarithm of the numerator in the above expression | |
| denominator | the logarithm of the denominator in the above expression | |
| s | the symbol vector |
Definition at line 87 of file modulator_nd.cpp.
References bitmap, itpp::LLR_calc_unit::jaclog(), k, llrcalc, and nt.
Referenced by itpp::Modulator_NCD::map_demod(), and itpp::Modulator_NRD::map_demod().
| void itpp::Modulator_ND::update_LLR | ( | Vec< QLLRvec > & | logP_apriori, | |
| QLLRvec & | numerator, | |||
| QLLRvec & | denominator, | |||
| int | s, | |||
| QLLR | scaled_norm, | |||
| int | j | |||
| ) | [protected] |
Update LLR, for scalar channel (for internal use).
This function updates the numerator and denominator in the expression
| logP_apriori | vector of a priori probabilities per bit | |
| numerator | the logarithm of the numerator in the above expression | |
| denominator | the logarithm of the denominator in the above expression | |
| s | the symbol vector |
Definition at line 67 of file modulator_nd.cpp.
References bitmap, itpp::LLR_calc_unit::jaclog(), k, and llrcalc.
int itpp::Modulator_ND::nt [protected] |
Number of dimensions.
Definition at line 70 of file modulator_nd.h.
Referenced by get_dim(), itpp::Modulator_NCD::map_demod(), itpp::Modulator_NRD::map_demod(), itpp::Modulator_NCD::modulate_bits(), itpp::Modulator_NRD::modulate_bits(), itpp::ND_UPAM::ND_UPAM(), itpp::ND_UPSK::ND_UPSK(), itpp::ND_UQAM::ND_UQAM(), itpp::ND_UPAM::set_Gray_PAM(), itpp::ND_UPSK::set_Gray_PSK(), itpp::ND_UQAM::set_Gray_QAM(), itpp::ND_UPAM::sphere_decoding(), and update_LLR().
LLR_calc_unit itpp::Modulator_ND::llrcalc [protected] |
LLR calculation unit.
Definition at line 72 of file modulator_nd.h.
Referenced by get_llrcalc(), itpp::Modulator_NCD::map_demod(), itpp::Modulator_NRD::map_demod(), Modulator_ND(), probabilities(), and update_LLR().
ivec itpp::Modulator_ND::k [protected] |
Number of bits per modulation symbol.
Definition at line 74 of file modulator_nd.h.
Referenced by get_k(), itpp::Modulator_NCD::map_demod(), itpp::Modulator_NRD::map_demod(), itpp::Modulator_NCD::modulate_bits(), itpp::Modulator_NRD::modulate_bits(), itpp::ND_UPAM::set_Gray_PAM(), itpp::ND_UPSK::set_Gray_PSK(), itpp::ND_UQAM::set_Gray_QAM(), itpp::ND_UPAM::sphere_decoding(), and update_LLR().
ivec itpp::Modulator_ND::M [protected] |
Number of modulation symbols along each dimension.
Definition at line 76 of file modulator_nd.h.
Referenced by get_M(), itpp::Modulator_NCD::map_demod(), itpp::Modulator_NRD::map_demod(), itpp::ND_UPAM::set_Gray_PAM(), itpp::ND_UPSK::set_Gray_PSK(), itpp::ND_UQAM::set_Gray_QAM(), and itpp::ND_UPAM::sphere_decoding().
Vec<bmat> itpp::Modulator_ND::bitmap [protected] |
Bit mapping table (one table per dimension).
Definition at line 78 of file modulator_nd.h.
Referenced by itpp::ND_UPAM::set_Gray_PAM(), itpp::ND_UPSK::set_Gray_PSK(), itpp::ND_UQAM::set_Gray_QAM(), itpp::ND_UPAM::sphere_decoding(), and update_LLR().
Vec<ivec> itpp::Modulator_ND::bits2symbols [protected] |
Bit pattern in decimal form ordered and the corresponding symbols (one pattern per dimension).
Definition at line 80 of file modulator_nd.h.
Referenced by itpp::Modulator_NCD::modulate_bits(), itpp::Modulator_NRD::modulate_bits(), itpp::ND_UPAM::set_Gray_PAM(), itpp::ND_UPSK::set_Gray_PSK(), and itpp::ND_UQAM::set_Gray_QAM().
Generated on Wed Apr 18 11:23:42 2007 for IT++ by Doxygen 1.5.2