itpp_sci  1.0.0
it++ based simulation framework for scicoslab, scilab and scipy
Public Member Functions | Public Attributes | List of all members
SIM::cofdm_demap Class Reference

de-mapper of COFDM carriers into QAM and BPSK symbol codes
Core immediate functions: SIM::cofdm_demap.set_carriers(), SIM::cofdm_demap.get_data(), SIM::cofdm_demap.get_pilots().
Core clocked functions: SIM::cofdm_demap.process().
More...

Inheritance diagram for SIM::cofdm_demap:
Inheritance graph
[legend]

Public Member Functions

 cofdm_demap ()
 
 ~cofdm_demap ()
 
void set_NFFT (int n)
 
void set_qam_size (int m)
 
void set_PA (double pa)
 
void set_data_carriers (ivec dc_indx)
 
void set_pilots_carriers (ivec pc_indx)
 
void set_zero_carriers (ivec zc_indx)
 
void set_carriers (cvec c)
 
ivec get_data ()
 
bvec get_pilots ()
 
imat process (const bvec &ce, const cmat &x)
 

Public Attributes

ivec y0
 y0[i] - QAM_CODES, BOOL_PILOTS for data carriers and pilots More...
 

Detailed Description

de-mapper of COFDM carriers into QAM and BPSK symbol codes
Core immediate functions: SIM::cofdm_demap.set_carriers(), SIM::cofdm_demap.get_data(), SIM::cofdm_demap.get_pilots().
Core clocked functions: SIM::cofdm_demap.process().

de-maps QAM codes for data carriers and booleans for BPSK pilot carriers

Constructor & Destructor Documentation

SIM::cofdm_demap::cofdm_demap ( )
inline
SIM::cofdm_demap::~cofdm_demap ( )
inline

Member Function Documentation

ivec SIM::cofdm_demap::get_data ( )

get QAM codes y[i] = QAMDEM[symbol[data_carrier(i)] for symbol set by set_symbol()

Returns
[ivec] data carrier symbols
bvec SIM::cofdm_demap::get_pilots ( )

get bool pilot y[i] = (Real(symbol[pilot_carrier(i)]>=0)?1:0) for symbol set by set_symbol()

Returns
[ivec] data carrier symbols
imat SIM::cofdm_demap::process ( const bvec &  ce,
const cmat &  x 
)

for active clock ticks ce[i] and for QAM,BPSK carriers x[i,:] return [PILOT|DATA] codes [ivec].

Parameters
ce- bvec[:] - clock_enable vector,
x- imat[:,PILOT|DATA] - symbols,
Returns
y - imat[:,NFFT] - [PILOT|DATA] codes.
void SIM::cofdm_demap::set_carriers ( cvec  c)

set carriers as QAM [I+jQ] for data carriers , BPSK [+/-PA+j0] pilots , zero [0+j0] set by set_data() and set_pilots()

Parameters
[in]c[cvec] COFDM symbol
void SIM::cofdm_demap::set_data_carriers ( ivec  dc_indx)

set data carrier indexes

Parameters
[in]dc_indx- [ivec] data carrier indexes, 0 =< index < NFFT
void SIM::cofdm_demap::set_NFFT ( int  n)

set FFT size (2^k)

Parameters
[in]n- FFT size
void SIM::cofdm_demap::set_PA ( double  pa)

set pilot amplitude

Parameters
[in]pa- pilot amplitude (pilot ? pa+j0:-pa+j0)-> y0[pilot_carrier(i)]
void SIM::cofdm_demap::set_pilots_carriers ( ivec  pc_indx)

set pilot carrier indexes

Parameters
[in]pc_indx- [ivec] pilot indexes, 0 =< index < NFFT
void SIM::cofdm_demap::set_qam_size ( int  m)

set QAM size (4^k)

Parameters
[in]m- QAM size
void SIM::cofdm_demap::set_zero_carriers ( ivec  zc_indx)

set zero carrier indexes

Parameters
[in]zc_indx- [ivec] zero carrier indexes, 0 =< index < NFFT

Member Data Documentation

ivec SIM::cofdm_demap::y0

y0[i] - QAM_CODES, BOOL_PILOTS for data carriers and pilots


The documentation for this class was generated from the following files: