channel_cccf
Channel emulation
Public Functions
channel_cccf | channel_cccf_create( |
channel_cccf | channel_cccf_copy( |
int | channel_cccf_destroy( |
int | channel_cccf_print( |
int | channel_cccf_add_awgn( |
int | channel_cccf_add_carrier_offset( |
int | channel_cccf_add_multipath( |
int | channel_cccf_add_shadowing( |
int | channel_cccf_execute( |
int | channel_cccf_execute_block( |
Interfaces
channel_cccf channel_cccf_create(
Create channel object with default parameters
channel_cccf channel_cccf_copy(
Copy object including all internal objects and state
int channel_cccf_destroy(
Destroy channel object, freeing all internal memory
int channel_cccf_print(
Print channel object internals to standard output
int channel_cccf_add_awgn(
Include additive white Gausss noise impairment
- _q : channel object
- _noise_floor : noise floor power spectral density [dB]
- _snr : signal-to-noise ratio [dB]
int channel_cccf_add_carrier_offset(
Include carrier offset impairment
- _q : channel object
- _frequency : carrier frequency offset [radians/sample]
- _phase : carrier phase offset [radians]
int channel_cccf_add_multipath(
Include multi-path channel impairment
- _q : channel object
- _h : channel coefficients (NULL for random)
- _h_len : number of channel coefficients
int channel_cccf_add_shadowing(
Include slowly-varying shadowing impairment
- _q : channel object
- _sigma : standard deviation for log-normal shadowing
- _fd : Doppler frequency, 0 <= _fd < 0.5
int channel_cccf_execute(
Apply channel impairments on single input sample
- _q : channel object
- _x : input sample
- _y : pointer to output sample
int channel_cccf_execute_block(
Apply channel impairments on block of samples
- _q : channel object
- _x : input array, shape: (_n, 1)
- _n : input array, length
- _y : output array, shape: (_n, 1)