include/it/channel.h

Go to the documentation of this file.
00001 /*
00002    libit - Library for basic source and channel coding functions
00003    Copyright (C) 2005-2008 Francois Cayre, Vivien Chappelier, Herve Jegou
00004 
00005    This library is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU Library General Public
00007    License as published by the Free Software Foundation; either
00008    version 2 of the License, or (at your option) any later version.
00009 
00010    This library is distributed in the hope that it will be useful,
00011    but WITHOUT ANY WARRANTY; without even the implied warranty of
00012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013    Library General Public License for more details.
00014 
00015    You should have received a copy of the GNU Library General Public
00016    License along with this library; if not, write to the Free
00017    Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00018 */
00019 
00020 /*
00021   Channel 
00022   Copyright (C) 2005-2008 Vivien Chappelier, Herve Jegou
00023 */
00024 
00025 #ifndef __it_channel_h
00026 #define __it_channel_h
00027 
00028 #include <it/vec.h>
00029 
00030 
00031 /* Basic BPSK modulation */
00032 vec  modulate_bpsk (bvec b);
00033 
00034 /* Binary symmetrical channel */
00035 bvec channel_bsc (bvec v, double crossover_proba);
00036 
00037 /* Return a vector pertubated by a white gaussian additive noise of variance sigma */
00038 vec  channel_awgn (vec v, double sigma);
00039 
00040 #endif

Hosted by
Copyright (C) 2005-2006 Hervé Jégou
Vivien Chappelier
Francois Cayre
libit logo courtesy of Jonathan Delhumeau