34 #define BeliefSparse_CheckAndAbort 0
44 _m_b.resize(size,
false);
49 _m_b.resize(belief.size(),
false);
52 for(vector<double>::const_iterator it=belief.begin();
53 it!=belief.end(); ++it)
59 #if BeliefSparse_CheckAndAbort
84 if (
this == &o)
return *
this;
93 if (
this == &o)
return *
this;
96 return(
operator=(casted_o));
102 #if BeliefSparse_CheckAndAbort
110 _m_b.resize(belief.size(),
false);
114 for(vector<double>::const_iterator it=belief.begin();
115 it!=belief.end(); ++it)
121 #if BeliefSparse_CheckAndAbort
132 this->Set( (vector<double>) b );
138 throw E(
"BeliefSparse::Set(const StateDistribution& belief) - inumplemented case.");
145 _m_b.resize(belief.
Size(),
false);
148 for(
unsigned int i=0; i!=belief.
Size(); ++i)
151 _m_b[i]=belief.
Get(i);
153 #if BeliefSparse_CheckAndAbort
166 #if BeliefSparse_CheckAndAbort
171 ss <<
"[" << _m_b.size() <<
"]< ";
172 for(
BScit it=_m_b.begin();
173 it!=_m_b.end(); ++it)
174 ss << it.index() <<
":" << *it <<
" ";
183 for(
BScit it=_m_b.begin();
184 it!=_m_b.end(); ++it)
209 #if BeliefSparse_CheckAndAbort
214 for(
BScit it=_m_b.begin(); it!=_m_b.end(); ++it)
215 x+=(*it)*values[it.index()];
222 vector<double> values(v.size1());
225 for(
unsigned int k=0;k!=v.size1();++k)
228 for(
BScit it=_m_b.begin(); it!=_m_b.end(); ++it)
229 x+=(*it)*v(k,it.index());
237 const vector<bool> &mask)
const
239 vector<double> values(v.size1(),-DBL_MAX);
242 for(
unsigned int k=0;k!=v.size1();++k)
247 for(
BScit it=_m_b.begin(); it!=_m_b.end(); ++it)
248 x+=(*it)*v(k,it.index());