Home | Develop | Download | Contact
example_ceo_model.cpp

Programa para el testeo de las funciones.Para compilar o código example_ceo_model.cpp:

g++ -static -o example_ceo_model example_ceo_model.cpp -lpdsitmm -lpdsramm

Para executar o programa:

./example_ceo_model

Retornando por consola:

p.T():  0.1 0.2 0.3 0.4 
BERnb:  0.08658

Código example_ceo_model.cpp:

#include <Pds/Ra>
#include <Pds/It>
int main(void)
{
unsigned int L=100000;
Pds::Vector p_exp;
Pds::Vector Us(L);
// Dados do canal
double ps=0.5;
Pds::Vector p={0.1,0.2,0.3,0.4};
// Source Us
Us.FillRandC(ps);
// Input channel U
Pds::Matrix U=Pds::ChannelModel::Bsc(Us,p);
// Second fusion method: NaiveBayes
Pds::Vector Unb=Pds::Ceo::Binary::Fusion::NaiveBayes(ps,p,U);
// Results
p.T().Print("p.T():\t");
std::cout<<"BERnb:\t"<<Us.Xor(Unb).Mean()<<"\n";
return 0;
}
Pds::Vector NaiveBayes(double ps, Pds::Vector p, const Pds::Matrix &U, double Umbral=0.5)
Retorna una aproximación del vector a partir de las muestras en .
Pds::Matrix Bsc(const Pds::Vector &Us, const Pds::Vector &p)
Retorna el resultado de passar un vector por un banco de canales BSC de probabilidades .

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed