IT++ Logo Newcom Logo

itpp::Multicode_Spread_1d Class Reference
[Digital Modulation]

Multicode spreading of float symbols. More...

#include <itpp/comm/spread.h>

List of all members.

Public Member Functions

 Multicode_Spread_1d ()
 Constructor.
 Multicode_Spread_1d (const mat &incodes)
 Constructor.
vec spread (const vec &symbols)
 Spreading function.
vec despread (const vec &receivedsignal, int timing)
 Despreading of signal. timing is the start position of the first symbol, given in number of samples.
void set_codes (const mat &incodes)
 Set the spreading codes. Each row represent one spreading code. The spreading factor equals the number of columns.
mat get_codes ()
 Returns the matrix containing the spreading codes used as rows in the matrix.
short get_period ()
 Returns the spreading factor.
short get_nocodes ()
 Returns the number of multi-codes used.

Protected Attributes

mat codes
 The spreading codes used size ($L \times N$).
short L
 The number of multi-codes.
short N
 The spreading factor.


Detailed Description

Multicode spreading of float symbols.

Obeserve that the spreading is normalized so that the energy per bit is preserved before and after spreading (that is each symbol is multiplied with 1/sqrt(N)). Hence, for the multicode case the energy is normalized for one symbol (code) but the transmitted signal consist of a sum of several signals.

Example: See Spread_1d

Definition at line 198 of file spread.h.


Constructor & Destructor Documentation

itpp::Multicode_Spread_1d::Multicode_Spread_1d  )  [inline]
 

Constructor.

Definition at line 201 of file spread.h.

itpp::Multicode_Spread_1d::Multicode_Spread_1d const mat incodes  ) 
 

Constructor.

Definition at line 115 of file spread.cpp.

References set_codes().


Member Function Documentation

vec itpp::Multicode_Spread_1d::spread const vec symbols  ) 
 

Spreading function.

Definition at line 134 of file spread.cpp.

References codes, itpp::floor(), L, N, and itpp::Mat< Num_T >::T().

Referenced by itpp::Multicode_Spread_2d::spread().

vec itpp::Multicode_Spread_1d::despread const vec receivedsignal,
int  timing
 

Despreading of signal. timing is the start position of the first symbol, given in number of samples.

Definition at line 147 of file spread.cpp.

References codes, itpp::floor(), L, and N.

Referenced by itpp::Multicode_Spread_2d::despread().

void itpp::Multicode_Spread_1d::set_codes const mat incodes  ) 
 

Set the spreading codes. Each row represent one spreading code. The spreading factor equals the number of columns.

Definition at line 120 of file spread.cpp.

References codes, itpp::Mat< Num_T >::cols(), itpp::Mat< Num_T >::get_row(), L, N, itpp::norm(), itpp::Mat< Num_T >::rows(), and itpp::Mat< Num_T >::set_row().

Referenced by Multicode_Spread_1d(), and itpp::Multicode_Spread_2d::set_codes().

mat itpp::Multicode_Spread_1d::get_codes  ) 
 

Returns the matrix containing the spreading codes used as rows in the matrix.

Definition at line 129 of file spread.cpp.

References codes.

Referenced by itpp::Multicode_Spread_2d::get_codesI(), and itpp::Multicode_Spread_2d::get_codesQ().

short itpp::Multicode_Spread_1d::get_period  )  [inline]
 

Returns the spreading factor.

Definition at line 213 of file spread.h.

References N.

Referenced by itpp::Multicode_Spread_2d::get_period().

short itpp::Multicode_Spread_1d::get_nocodes  )  [inline]
 

Returns the number of multi-codes used.

Definition at line 215 of file spread.h.

References L.


Member Data Documentation

mat itpp::Multicode_Spread_1d::codes [protected]
 

The spreading codes used size ($L \times N$).

Definition at line 218 of file spread.h.

Referenced by despread(), get_codes(), set_codes(), and spread().

short itpp::Multicode_Spread_1d::L [protected]
 

The number of multi-codes.

Definition at line 220 of file spread.h.

Referenced by despread(), get_nocodes(), set_codes(), and spread().

short itpp::Multicode_Spread_1d::N [protected]
 

The spreading factor.

Definition at line 222 of file spread.h.

Referenced by despread(), get_period(), set_codes(), and spread().


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

Generated on Thu Apr 19 14:20:42 2007 for IT++ by Doxygen 1.4.6