Changeset 19

Show
Ignore:
Timestamp:
02/16/08 15:12:24 (16 years ago)
Author:
smidl
Message:

Switch to CMake

Files:
5 added
11 removed
79 modified

Legend:

Unmodified
Added
Removed
  • Doxyfile

    r3 r19  
    256256CLASS_DIAGRAMS         = YES 
    257257HIDE_UNDOC_RELATIONS   = YES 
    258 HAVE_DOT               = NO 
     258HAVE_DOT               = YES 
    259259CLASS_GRAPH            = YES 
    260260COLLABORATION_GRAPH    = YES 
    261261GROUP_GRAPHS           = YES 
    262262UML_LOOK               = NO 
    263 TEMPLATE_RELATIONS     = NO 
     263TEMPLATE_RELATIONS     = YES 
    264264INCLUDE_GRAPH          = YES 
    265265INCLUDED_BY_GRAPH      = YES 
  • bdm/math/libDC.cpp

    r18 r19  
    2222 
    2323ldmat::ldmat() { 
    24         vec D ; 
    25         mat L; 
    2624        dim = 0; 
     25} 
     26 
     27ldmat::ldmat(const vec D0) { 
     28        D = D0; 
     29        dim = D0.length(); 
     30        L = eye(dim); 
    2731} 
    2832 
     
    6569        os << "L:" << ld.L << endl; 
    6670        os << "D:" << ld.D << endl; 
     71        return os; 
    6772} 
    6873 
     
    165170// sum logarithms of diagobal elements 
    166171        for ( i=0; i<D.length(); i++ ){ldet+=log( D( i ) );}; 
     172        return ldet; 
    167173} 
    168174 
     
    182188        int i; 
    183189        for ( i=0;i<D.length();i++ ){D( i )*=x;}; 
     190        return *this; 
    184191} 
    185192 
     
    187194        int i,j; 
    188195        vec res( dim ); 
    189         double sum; 
     196        //double sum; 
    190197        for ( i=0;i<dim;i++ ) {//for each element of result 
    191198                res( i ) = 0.0; 
     
    194201                } 
    195202        } 
    196         vec res2 = L.transpose()*diag( sqrt( D ) )*x; 
    197         return res2; 
     203//      vec res2 = L.transpose()*diag( sqrt( D ) )*x; 
     204        return res; 
    198205} 
    199206 
  • bdm/math/libDC.h

    r14 r19  
    114114        //! Construct by decomposition of full matrix V. 
    115115        ldmat( mat V ); 
     116        //! Construct diagonal matrix with diagonal D0 
     117        ldmat( vec D0 ); 
    116118        ldmat (); 
    117119 
     
    170172inline ldmat& ldmat::operator += (const ldmat &ldA)  {this->add(ldA);return *this;} 
    171173inline ldmat& ldmat::operator -= (const ldmat &ldA)  {this->add(ldA,-1.0);return *this;} 
    172 inline int ldmat::cols(){return L.cols();} 
    173 inline int ldmat::rows(){return L.rows();} 
     174inline int ldmat::cols(){return dim;} 
     175inline int ldmat::rows(){return dim;} 
    174176 
    175177#endif // DC_H 
  • bdm/stat/libBM.cpp

    r15 r19  
    6868} 
    6969 
     70ivec RV::indexlist(){ 
     71        ivec indlist(size); 
     72        int i; 
     73        int pos = 0; 
     74        for(i=0;i<len;i++){ 
     75                indlist.set_subvector(pos,pos+sizes(i)-1, ids(i)); 
     76        } 
     77} 
  • bdm/stat/libBM.h

    r18 r19  
    2525*/ 
    2626class RV { 
    27         int size,len; 
     27        //! size = sum of sizes 
     28        int size; 
     29        //! len = number of individual rvs 
     30        int len; 
    2831        ivec ids; 
    2932        ivec sizes; 
     
    4649 
    4750        //! Return length (number of scalars) of the RV. 
    48         int count() {return size;} 
     51        int count() const {return size;} ; 
    4952        //TODO why not inline and later?? 
    5053         
     
    6164        //! Generate new \c RV with \c time shifted by delta. 
    6265        void t(int delta); 
     66        //! generate a list of indeces, i.e. which  
     67        ivec indexlist(); 
    6368}; 
    6469 
     
    6671 
    6772 
    68 //! Class representing function of variables 
     73//! Class representing function $f(x)$ of variable $x$ represented by \c rv 
    6974class fnc { 
    7075        RV rv; 
     76public:  
     77        //! function evaluates numerical value of $f(x)$ at $x=cond$ 
     78        virtual vec eval(vec &cond){}; //Fixme: virtual? 
    7179}; 
    7280 
     
    93101//      virtual vec moment ( const int order = 1 ); 
    94102        //! Returns a sample from the density, $x \sim epdf(rv)$ 
    95         virtual vec sample (){}; 
     103        virtual vec sample ()=0; 
    96104        virtual double eval(const vec &val){}; 
    97105}; 
     
    119127*/ 
    120128class DS { 
     129protected: 
    121130        //!Observed variables, returned by \c getdata(). 
    122131        RV Drv;  
  • bdm/stat/libDS.cpp

    r18 r19  
    22#include "libDS.h" 
    33 
    4 using namespace itpp; 
     4//using namespace itpp; 
    55 
    66void MemDS::getdata(vec &dt){ 
     7        int i; 
     8         
    79        it_assert_debug(dt.length()==rowid.length(), "MemDS:getdata incompatible dt"); 
    810        for(i=0;i<rowid.length();i++){ 
     
    1214 
    1315void MemDS::getdata(vec &dt,ivec &indeces){ 
    14         int j; 
     16        int j,i; 
    1517        it_assert_debug(dt.length()==indeces.length(), "MemDS:getdata incompatible dt"); 
    1618        for(i=0;i<indeces.length();i++){ 
     
    3234} 
    3335 
    34 MemDS::MemDS(vec &Dat, ivec &rowid, ivec &delays){ 
    35         it_assert_debug(max(rowid)<=Dat.rows,"MemDS rowid is too high for given Dat.") 
    36         it_assert_debug(max(delays)<Dat.cols,"MemDS delays are too high.") 
     36MemDS::MemDS(mat &Dat, ivec &rowid, ivec &delays){ 
     37        it_assert_debug(max(rowid)<=Dat.rows(),"MemDS rowid is too high for given Dat."); 
     38        it_assert_debug(max(delays)<Dat.cols(),"MemDS delays are too high."); 
    3739         
    38         time = max(delayes);  
     40        time = max(delays);  
    3941        Data = Dat; 
    4042} 
  • bdm/stat/libDS.h

    r18 r19  
    1515 
    1616#include <itpp/itbase.h> 
    17 //#include <std> 
     17#include "libBM.h" 
    1818 
    1919using namespace itpp; 
     
    3838        void write(vec &ut){it_error("MemDS::write is not supported");} 
    3939        void write(vec &ut,ivec &indexes){it_error("MemDS::write is not supported");} 
    40 } 
     40        void step(); 
     41        MemDS(mat &Dat, ivec &rowid, ivec &delays); 
     42}; 
    4143 
    4244 
  • bdm/stat/libFN.cpp

    r14 r19  
    22#include "libFN.h" 
    33 
    4 using namespace itpp; 
    5  
    64using std::endl; 
    75 
    8 constfn::constfn(RV rv){ 
    9  
     6linfn linfn::evalsome ( ivec &rvind ) 
     7{ 
     8        return *this; 
    109} 
    1110 
    12 vec constfn::evalsome(ivec rvind){ 
    13          
    14 } 
     11bilinfn::bilinfn ( const RV &x0, const RV &u0, const mat &A0, const mat &B0 ) 
     12{ 
     13        it_assert_debug ( A0.cols() ==A0.rows() ==x0.count(), "linfn:: wrong A" ); 
     14        it_assert_debug ( ( B0.rows() ==x0.count() ) & ( B0.cols() ==u0.count() ), "linfn:: wrong B" ); 
     15 
     16        A = A0; 
     17        B = B0; 
     18        rv=x0; rv.add ( u0 ); 
     19        indexlist=rv.indexlist(); 
     20}; 
     21 
  • bdm/stat/libFN.h

    r15 r19  
    22// C++ Interface: itpp_ext 
    33// 
    4 // Description:  
     4// Description: 
    55// 
    66// 
     
    1414 
    1515using namespace itpp; 
    16   
    17 class constfn : public fnc { 
    18         RV rv; 
    19         ivec indexlist; // needed by evalsome 
    20         vec val; 
    2116 
    22 public: 
    23         vec eval() {return val;}; 
    24         vec eval(vec &cond) {return val;}; 
    25          
    26         vec evalsome(ivec &rvind); 
    27 } 
     17//! class representing function $f(x) = a$, here rv is empty 
     18class constfn : public fnc 
     19{ 
     20                RV rv; 
     21                vec val; 
     22 
     23        public: 
     24                vec eval() {return val;}; 
     25                vec eval ( vec &cond ) {return val;}; 
     26                //!Default constructor 
     27                constfn ( const vec &val0 ) :rv(),val ( val0 ) {}; 
     28}; 
     29 
     30//! Class representing function $f(x) = Ax+B$ 
     31class linfn: public fnc 
     32{ 
     33                RV rv; 
     34                ivec indexlist; // needed by evalsome 
     35                mat A; 
     36                vec B; 
     37        public : 
     38                vec eval ( vec &cond ) {it_assert_debug ( cond.length() ==rv.count(), "linfn::eval Wrong cond." );return A*cond+B;}; 
     39 
     40                linfn evalsome ( ivec &rvind ); 
     41                linfn ( const RV &rv0 ) :rv ( rv0 ),A ( eye ( rv0.count() ) ),B ( zeros ( rv0.count() ) ) { indexlist=rv.indexlist();}; 
     42                linfn ( const RV &rv0, const mat &A0 ) : rv ( rv0 ), A ( A0 ), B ( zeros ( rv0.count() ) ) { indexlist=rv.indexlist();}; 
     43                linfn ( const RV &rv0, const mat &A0, const vec &B0 ) :rv ( rv0 ), A ( A0 ), B ( B0 ) { indexlist=rv.indexlist();}; 
     44}; 
     45 
     46//! Class representing function $f(x,u) = Ax+Bu$ 
     47class bilinfn: public fnc 
     48{ 
     49                RV rv; 
     50                ivec indexlist; // needed by evalsome 
     51                mat A; 
     52                mat B; 
     53        public : 
     54                vec eval ( vec &cond ) 
     55                { 
     56                        it_assert_debug ( cond.length() ==rv.count(), "linfn::eval Wrong cond." ); 
     57                        int sizex = A.cols(); 
     58                        return A*cond(0,sizex-1)+B*cond(sizex,-1);//-1 = end (in matlab) 
     59                }; 
     60                vec eval ( vec &xcond, vec &ucond ) 
     61                { 
     62                        it_assert_debug ( xcond.length() ==rv.count(), "linfn::eval Wrong cond." ); 
     63                        return A*xcond+B*ucond; 
     64                }; 
     65 
     66                bilinfn evalsome ( ivec &rvind ); 
     67                bilinfn ( const RV &x0, const RV &u0 ) :A ( eye ( x0.count() ) ),B ( zeros ( x0.count(),u0.count() ) ) 
     68                { 
     69                        rv=x0; rv.add ( u0 ); 
     70                        indexlist=rv.indexlist(); 
     71                }; 
     72                bilinfn ( const RV &x0, const RV &u0, const mat &A0, const mat &B0 ); 
     73}; 
  • doc/html/annotated.html

    r8 r19  
    2222<h1>mixpp Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table> 
    2323  <tr><td class="indexkey"><a class="el" href="classBM.html">BM</a></td><td class="indexvalue">Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities </td></tr> 
     24  <tr><td class="indexkey"><a class="el" href="classDS.html">DS</a></td><td class="indexvalue">Abstract class for discrete-time sources of data </td></tr> 
    2425  <tr><td class="indexkey"><a class="el" href="classeEF.html">eEF</a></td><td class="indexvalue">General conjugate exponential family posterior density </td></tr> 
    2526  <tr><td class="indexkey"><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td class="indexvalue">General exponential family density </td></tr> 
     
    2930  <tr><td class="indexkey"><a class="el" href="classKalman.html">Kalman&lt; sq_T &gt;</a></td><td class="indexvalue"><a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> filter with covaraince matrices in square root form </td></tr> 
    3031  <tr><td class="indexkey"><a class="el" href="classKalmanFull.html">KalmanFull</a></td><td class="indexvalue">Basic <a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> filter with full matrices (education purpose only)! Will be deleted soon! </td></tr> 
     32  <tr><td class="indexkey"><a class="el" href="classMemDS.html">MemDS</a></td><td class="indexvalue">Class representing off-line data stored in memory </td></tr> 
    3133  <tr><td class="indexkey"><a class="el" href="classmpdf.html">mpdf</a></td><td class="indexvalue">Conditional probability density, e.g. modeling some dependencies </td></tr> 
    3234  <tr><td class="indexkey"><a class="el" href="classPF.html">PF</a></td><td class="indexvalue">A Particle Filter prototype </td></tr> 
     
    3537  <tr><td class="indexkey"><a class="el" href="classTrivialPF.html">TrivialPF</a></td><td class="indexvalue">Trivial particle filter with proposal density that is not conditioned on the data </td></tr> 
    3638</table> 
    37 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     39<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    3840<a href="http://www.doxygen.org/index.html"> 
    3941<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classBM-members.html

    r8 r19  
    2424  <tr class="memlist"><td><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">bayes</a>(mat Dt)</td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
    2525  <tr class="memlist"><td><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
    26 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     26</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:41 2008 for mixpp by&nbsp; 
    2727<a href="http://www.doxygen.org/index.html"> 
    2828<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classBM.html

    r8 r19  
    2828Inheritance diagram for BM:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classBM.png" usemap="#BM_map" border="0" alt=""></center> 
    32 <map name="BM_map"> 
    33 <area href="classKalman.html" alt="Kalman< sq_T >" shape="rect" coords="0,56,103,80"> 
    34 <area href="classKalmanFull.html" alt="KalmanFull" shape="rect" coords="113,56,216,80"> 
    35 <area href="classPF.html" alt="PF" shape="rect" coords="226,56,329,80"> 
    36 <area href="classTrivialPF.html" alt="TrivialPF" shape="rect" coords="226,112,329,136"> 
    37 </map> 
    38 </div> 
     30<p><center><img src="classBM__inherit__graph.png" border="0" usemap="#BM__inherit__map" alt="Inheritance graph"></center> 
     31<map name="BM__inherit__map"> 
     32<area shape="rect" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form." alt="" coords="5,84,133,111"><area shape="rect" href="classKalmanFull.html" title="Basic Kalman filter with full matrices (education purpose only)! Will be deleted..." alt="" coords="157,84,248,111"><area shape="rect" href="classPF.html" title="A Particle Filter prototype." alt="" coords="272,84,309,111"><area shape="rect" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data..." alt="" coords="255,161,327,188"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3934 
    4035<p> 
     
    9287</dl> 
    9388 
    94 <p>Implemented in <a class="el" href="classKalmanFull.html#048b13739b94c331cda08249b278552b">KalmanFull</a>, <a class="el" href="classKalman.html#e945d9205ca14acbd83ba80ea6f72b8e">Kalman&lt; sq_T &gt;</a>, and <a class="el" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389">TrivialPF</a>.</p> 
     89<p>Implemented in <a class="el" href="classKalmanFull.html#048b13739b94c331cda08249b278552b">KalmanFull</a>, <a class="el" href="classKalman.html#e945d9205ca14acbd83ba80ea6f72b8e">Kalman&lt; sq_T &gt;</a>, <a class="el" href="classPF.html#eb06bd7d4325f22f54233967295793b9">PF</a>, and <a class="el" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389">TrivialPF</a>.</p> 
    9590 
    9691</div> 
    9792</div><p> 
    9893<hr>The documentation for this class was generated from the following file:<ul> 
    99 <li>work/mixpp/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
    100 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     94<li>work/mixpp/bdm/stat/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
     95<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:41 2008 for mixpp by&nbsp; 
    10196<a href="http://www.doxygen.org/index.html"> 
    10297<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classKalman-members.html

    r8 r19  
    2828  <tr bgcolor="#f0f0f0"><td><b>operator&lt;&lt;</b> (defined in <a class="el" href="classKalman.html">Kalman&lt; sq_T &gt;</a>)</td><td><a class="el" href="classKalman.html">Kalman&lt; sq_T &gt;</a></td><td><code> [friend]</code></td></tr> 
    2929  <tr class="memlist"><td><a class="el" href="classKalman.html#188cd5ac1c9e496b1a371eb7c57c97d3">P</a></td><td><a class="el" href="classKalman.html">Kalman&lt; sq_T &gt;</a></td><td></td></tr> 
    30 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     30</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:45 2008 for mixpp by&nbsp; 
    3131<a href="http://www.doxygen.org/index.html"> 
    3232<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classKalman.html

    r8 r19  
    2828Inheritance diagram for Kalman&lt; sq_T &gt;:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classKalman.png" usemap="#Kalman< sq_T >_map" border="0" alt=""></center> 
    32 <map name="Kalman< sq_T >_map"> 
    33 <area href="classBM.html" alt="BM" shape="rect" coords="0,0,103,24"> 
    34 </map> 
    35 </div> 
     30<p><center><img src="classKalman__inherit__graph.png" border="0" usemap="#Kalman_3_01sq__T_01_4__inherit__map" alt="Inheritance graph"></center> 
     31<map name="Kalman_3_01sq__T_01_4__inherit__map"> 
     32<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="48,7,91,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for Kalman&lt; sq_T &gt;:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classKalman__coll__graph.png" border="0" usemap="#Kalman_3_01sq__T_01_4__coll__map" alt="Collaboration graph"></center> 
     38<map name="Kalman_3_01sq__T_01_4__coll__map"> 
     39<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="13,7,56,33"><area shape="rect" title="P\nQ\nR\n_iRy\n_Ry" alt="" coords="97,31,105,39"><area shape="rect" title="P\nQ\nR\n_iRy\n_Ry" alt="" coords="68,168,76,176"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3641 
    3742<p> 
     
    6671 
    6772<a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> filter with covaraince matrices in square root form. <hr>The documentation for this class was generated from the following file:<ul> 
    68 <li>work/mixpp/<a class="el" href="libKF_8h-source.html">libKF.h</a></ul> 
    69 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     73<li>work/mixpp/bdm/estim/<a class="el" href="libKF_8h-source.html">libKF.h</a></ul> 
     74<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:45 2008 for mixpp by&nbsp; 
    7075<a href="http://www.doxygen.org/index.html"> 
    7176<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classKalmanFull-members.html

    r8 r19  
    2828  <tr bgcolor="#f0f0f0"><td><b>operator&lt;&lt;</b> (defined in <a class="el" href="classKalmanFull.html">KalmanFull</a>)</td><td><a class="el" href="classKalmanFull.html">KalmanFull</a></td><td><code> [friend]</code></td></tr> 
    2929  <tr class="memlist"><td><a class="el" href="classKalmanFull.html#b75dc059e84fa8ffc076203b30f926cc">P</a></td><td><a class="el" href="classKalmanFull.html">KalmanFull</a></td><td></td></tr> 
    30 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     30</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:46 2008 for mixpp by&nbsp; 
    3131<a href="http://www.doxygen.org/index.html"> 
    3232<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classKalmanFull.html

    r8 r19  
    2828Inheritance diagram for KalmanFull:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classKalmanFull.png" usemap="#KalmanFull_map" border="0" alt=""></center> 
    32 <map name="KalmanFull_map"> 
    33 <area href="classBM.html" alt="BM" shape="rect" coords="0,0,74,24"> 
    34 </map> 
    35 </div> 
     30<p><center><img src="classKalmanFull__inherit__graph.png" border="0" usemap="#KalmanFull__inherit__map" alt="Inheritance graph"></center> 
     31<map name="KalmanFull__inherit__map"> 
     32<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="29,7,72,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for KalmanFull:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classKalmanFull__coll__graph.png" border="0" usemap="#KalmanFull__coll__map" alt="Collaboration graph"></center> 
     38<map name="KalmanFull__coll__map"> 
     39<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="29,7,72,33"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3641 
    3742<p> 
     
    6368<hr><a name="_details"></a><h2>Detailed Description</h2> 
    6469Basic <a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> filter with full matrices (education purpose only)! Will be deleted soon! <hr>The documentation for this class was generated from the following files:<ul> 
    65 <li>work/mixpp/<a class="el" href="libKF_8h-source.html">libKF.h</a><li>work/mixpp/libKF.cpp</ul> 
    66 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     70<li>work/mixpp/bdm/estim/<a class="el" href="libKF_8h-source.html">libKF.h</a><li>work/mixpp/bdm/estim/libKF.cpp</ul> 
     71<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:46 2008 for mixpp by&nbsp; 
    6772<a href="http://www.doxygen.org/index.html"> 
    6873<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classPF-members.html

    r8 r19  
    2121</div> 
    2222<h1>PF Member List</h1>This is the complete list of members for <a class="el" href="classPF.html">PF</a>, including all inherited members.<p><table> 
    23   <tr class="memlist"><td><a class="el" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0">bayes</a>(const vec &amp;dt, bool evall=true)=0</td><td><a class="el" href="classBM.html">BM</a></td><td><code> [pure virtual]</code></td></tr> 
    24   <tr class="memlist"><td><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">bayes</a>(mat Dt)</td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
     23  <tr class="memlist"><td><a class="el" href="classPF.html#eb06bd7d4325f22f54233967295793b9">bayes</a>(const vec &amp;dt, bool evell)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [inline, virtual]</code></td></tr> 
     24  <tr class="memlist"><td><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">BM::bayes</a>(mat Dt)</td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
    2525  <tr class="memlist"><td><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
    2626  <tr bgcolor="#f0f0f0"><td><b>n</b> (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [protected]</code></td></tr> 
     27  <tr bgcolor="#f0f0f0"><td><b>PF</b>(vec w) (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td></td></tr> 
    2728  <tr class="memlist"><td><a class="el" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19">resample</a>(RESAMPLING_METHOD method=SYSTEMATIC)</td><td><a class="el" href="classPF.html">PF</a></td><td></td></tr> 
     29  <tr bgcolor="#f0f0f0"><td><b>URNG</b> (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [protected]</code></td></tr> 
    2830  <tr bgcolor="#f0f0f0"><td><b>w</b> (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [protected]</code></td></tr> 
    29 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     31</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:48 2008 for mixpp by&nbsp; 
    3032<a href="http://www.doxygen.org/index.html"> 
    3133<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classPF.html

    r8 r19  
    2828Inheritance diagram for PF:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classPF.png" usemap="#PF_map" border="0" alt=""></center> 
    32 <map name="PF_map"> 
    33 <area href="classBM.html" alt="BM" shape="rect" coords="0,0,63,24"> 
    34 <area href="classTrivialPF.html" alt="TrivialPF" shape="rect" coords="0,112,63,136"> 
    35 </map> 
    36 </div> 
     30<p><center><img src="classPF__inherit__graph.png" border="0" usemap="#PF__inherit__map" alt="Inheritance graph"></center> 
     31<map name="PF__inherit__map"> 
     32<area shape="rect" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data..." alt="" coords="5,161,77,188"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="20,7,63,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for PF:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classPF__coll__graph.png" border="0" usemap="#PF__coll__map" alt="Collaboration graph"></center> 
     38<map name="PF__coll__map"> 
     39<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="5,7,48,33"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3741 
    3842<p> 
     
    4347ivec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19">resample</a> (RESAMPLING_METHOD method=SYSTEMATIC)</td></tr> 
    4448 
    45 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns indexes of particles that should be resampled. <br></td></tr> 
     49<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns indexes of particles that should be resampled. The ordering MUST guarantee inplace replacement. (Important for MPF.). <br></td></tr> 
     50<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c37f95f0c1661c7f1e3fccb31d39de73"></a><!-- doxytag: member="PF::PF" ref="c37f95f0c1661c7f1e3fccb31d39de73" args="(vec w)" --> 
     51&nbsp;</td><td class="memItemRight" valign="bottom"><b>PF</b> (vec w)</td></tr> 
     52 
     53<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPF.html#eb06bd7d4325f22f54233967295793b9">bayes</a> (const vec &amp;dt, bool evell)</td></tr> 
     54 
     55<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Incremental Bayes rule.  <a href="#eb06bd7d4325f22f54233967295793b9"></a><br></td></tr> 
    4656<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> 
    4757<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2c2f44ed7a4eaa42e07bdb58d503f280"></a><!-- doxytag: member="PF::n" ref="2c2f44ed7a4eaa42e07bdb58d503f280" args="" --> 
     
    5161vec&nbsp;</td><td class="memItemRight" valign="bottom"><b>w</b></td></tr> 
    5262 
     63<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3568ca7c3b3175d98b548f496b4c34dd"></a><!-- doxytag: member="PF::URNG" ref="3568ca7c3b3175d98b548f496b4c34dd" args="" --> 
     64Uniform_RNG&nbsp;</td><td class="memItemRight" valign="bottom"><b>URNG</b></td></tr> 
     65 
    5366</table> 
    5467<hr><a name="_details"></a><h2>Detailed Description</h2> 
    5568A Particle Filter prototype.  
    5669<p> 
    57 Bayesian Filtering equations hold. <hr>The documentation for this class was generated from the following files:<ul> 
    58 <li>work/mixpp/<a class="el" href="libPF_8h-source.html">libPF.h</a><li>work/mixpp/libPF.cpp</ul> 
    59 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     70Bayesian Filtering equations hold. <hr><h2>Member Function Documentation</h2> 
     71<a class="anchor" name="eb06bd7d4325f22f54233967295793b9"></a><!-- doxytag: member="PF::bayes" ref="eb06bd7d4325f22f54233967295793b9" args="(const vec &amp;dt, bool evell)" --> 
     72<div class="memitem"> 
     73<div class="memproto"> 
     74      <table class="memname"> 
     75        <tr> 
     76          <td class="memname">void PF::bayes           </td> 
     77          <td>(</td> 
     78          <td class="paramtype">const vec &amp;&nbsp;</td> 
     79          <td class="paramname"> <em>dt</em>, </td> 
     80        </tr> 
     81        <tr> 
     82          <td class="paramkey"></td> 
     83          <td></td> 
     84          <td class="paramtype">bool&nbsp;</td> 
     85          <td class="paramname"> <em>evall</em></td><td>&nbsp;</td> 
     86        </tr> 
     87        <tr> 
     88          <td></td> 
     89          <td>)</td> 
     90          <td></td><td></td><td width="100%"><code> [inline, virtual]</code></td> 
     91        </tr> 
     92      </table> 
     93</div> 
     94<div class="memdoc"> 
     95 
     96<p> 
     97Incremental Bayes rule.  
     98<p> 
     99<dl compact><dt><b>Parameters:</b></dt><dd> 
     100  <table border="0" cellspacing="2" cellpadding="0"> 
     101    <tr><td valign="top"></td><td valign="top"><em>dt</em>&nbsp;</td><td>vector of input data </td></tr> 
     102    <tr><td valign="top"></td><td valign="top"><em>evall</em>&nbsp;</td><td>If true, the filter will compute likelihood of the data record and store it in <code>ll</code> </td></tr> 
     103  </table> 
     104</dl> 
     105 
     106<p>Implements <a class="el" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0">BM</a>.</p> 
     107 
     108<p>Reimplemented in <a class="el" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389">TrivialPF</a>.</p> 
     109 
     110</div> 
     111</div><p> 
     112<hr>The documentation for this class was generated from the following files:<ul> 
     113<li>work/mixpp/bdm/estim/<a class="el" href="libPF_8h-source.html">libPF.h</a><li>work/mixpp/bdm/estim/libPF.cpp</ul> 
     114<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:48 2008 for mixpp by&nbsp; 
    60115<a href="http://www.doxygen.org/index.html"> 
    61116<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classRV-members.html

    r8 r19  
    2121</div> 
    2222<h1>RV Member List</h1>This is the complete list of members for <a class="el" href="classRV.html">RV</a>, including all inherited members.<p><table> 
    23   <tr class="memlist"><td><a class="el" href="classRV.html#a764092415291a0e6452a3711749d18e">length</a>()</td><td><a class="el" href="classRV.html">RV</a></td><td><code> [inline]</code></td></tr> 
     23  <tr class="memlist"><td><a class="el" href="classRV.html#f068a86abb5a6e46fcf76c939d2ed2ec">add</a>(RV rv2)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
     24  <tr class="memlist"><td><a class="el" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04">count</a>()</td><td><a class="el" href="classRV.html">RV</a></td><td><code> [inline]</code></td></tr> 
     25  <tr class="memlist"><td><a class="el" href="classRV.html#6b078b1086224aca3a9e5a203e647fb6">find</a>(RV rv2)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    2426  <tr class="memlist"><td><a class="el" href="classRV.html#28bbcb8873bafdac317bafb7b481cc45">operator()</a>(ivec ind)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    2527  <tr class="memlist"><td><a class="el" href="classRV.html#cad6f15535d10437f6690cb4492176a8">operator&lt;&lt;</a>(std::ostream &amp;os, const RV &amp;rv)</td><td><a class="el" href="classRV.html">RV</a></td><td><code> [friend]</code></td></tr> 
     
    2729  <tr class="memlist"><td><a class="el" href="classRV.html#cf911c3900214460ade1366b04058462">RV</a>(ivec ids)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    2830  <tr class="memlist"><td><a class="el" href="classRV.html#6a22f5c06d6403870d4e414b1993bf9e">RV</a>()</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    29   <tr class="memlist"><td><a class="el" href="classRV.html#f47ab0015ebac822da3b2e00f42a8fc6">rvadd</a>(RV rv2)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    30   <tr class="memlist"><td><a class="el" href="classRV.html#45b869bced40dc3fa0df584aaf8228c0">rvfind</a>(RV rv2)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    31   <tr class="memlist"><td><a class="el" href="classRV.html#70a53f2bc37929bae899b0b24cda9d8e">rvsubselect</a>(ivec ind)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    32   <tr class="memlist"><td><a class="el" href="classRV.html#269023ac4d41b21c4e1f7f17db1603b9">rvsubt</a>(RV rv2)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
     31  <tr class="memlist"><td><a class="el" href="classRV.html#2bf35b18a32aad419f0516273939628e">subselect</a>(ivec ind)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
     32  <tr class="memlist"><td><a class="el" href="classRV.html#4c5ec5e913fc598e242cb930ae8bdf4a">subt</a>(RV rv2)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    3333  <tr class="memlist"><td><a class="el" href="classRV.html#e0a158d53ab9430627241f844f4c9a60">t</a>(int delta)</td><td><a class="el" href="classRV.html">RV</a></td><td></td></tr> 
    34 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     34</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:48 2008 for mixpp by&nbsp; 
    3535<a href="http://www.doxygen.org/index.html"> 
    3636<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classRV.html

    r8 r19  
    4242 
    4343<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Empty constructor will be set later. <br></td></tr> 
    44 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a764092415291a0e6452a3711749d18e"></a><!-- doxytag: member="RV::length" ref="a764092415291a0e6452a3711749d18e" args="()" --> 
    45 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#a764092415291a0e6452a3711749d18e">length</a> ()</td></tr> 
     44<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9dcaca7b87cfb0e24a19260067d62f04"></a><!-- doxytag: member="RV::count" ref="9dcaca7b87cfb0e24a19260067d62f04" args="()" --> 
     45int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04">count</a> ()</td></tr> 
    4646 
    4747<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return length (number of scalars) of the <a class="el" href="classRV.html" title="Class representing variables, most often random variables.">RV</a>. <br></td></tr> 
    48 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="45b869bced40dc3fa0df584aaf8228c0"></a><!-- doxytag: member="RV::rvfind" ref="45b869bced40dc3fa0df584aaf8228c0" args="(RV rv2)" --> 
    49 ivec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#45b869bced40dc3fa0df584aaf8228c0">rvfind</a> (<a class="el" href="classRV.html">RV</a> rv2)</td></tr> 
     48<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6b078b1086224aca3a9e5a203e647fb6"></a><!-- doxytag: member="RV::find" ref="6b078b1086224aca3a9e5a203e647fb6" args="(RV rv2)" --> 
     49ivec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#6b078b1086224aca3a9e5a203e647fb6">find</a> (<a class="el" href="classRV.html">RV</a> rv2)</td></tr> 
    5050 
    5151<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find indexes of another rv in self. <br></td></tr> 
    52 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f47ab0015ebac822da3b2e00f42a8fc6"></a><!-- doxytag: member="RV::rvadd" ref="f47ab0015ebac822da3b2e00f42a8fc6" args="(RV rv2)" --> 
    53 <a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#f47ab0015ebac822da3b2e00f42a8fc6">rvadd</a> (<a class="el" href="classRV.html">RV</a> rv2)</td></tr> 
     52<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f068a86abb5a6e46fcf76c939d2ed2ec"></a><!-- doxytag: member="RV::add" ref="f068a86abb5a6e46fcf76c939d2ed2ec" args="(RV rv2)" --> 
     53<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#f068a86abb5a6e46fcf76c939d2ed2ec">add</a> (<a class="el" href="classRV.html">RV</a> rv2)</td></tr> 
    5454 
    5555<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add (concat) another variable to the current one. <br></td></tr> 
    56 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="269023ac4d41b21c4e1f7f17db1603b9"></a><!-- doxytag: member="RV::rvsubt" ref="269023ac4d41b21c4e1f7f17db1603b9" args="(RV rv2)" --> 
    57 <a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#269023ac4d41b21c4e1f7f17db1603b9">rvsubt</a> (<a class="el" href="classRV.html">RV</a> rv2)</td></tr> 
     56<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4c5ec5e913fc598e242cb930ae8bdf4a"></a><!-- doxytag: member="RV::subt" ref="4c5ec5e913fc598e242cb930ae8bdf4a" args="(RV rv2)" --> 
     57<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#4c5ec5e913fc598e242cb930ae8bdf4a">subt</a> (<a class="el" href="classRV.html">RV</a> rv2)</td></tr> 
    5858 
    5959<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract another variable from the current one. <br></td></tr> 
    60 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="70a53f2bc37929bae899b0b24cda9d8e"></a><!-- doxytag: member="RV::rvsubselect" ref="70a53f2bc37929bae899b0b24cda9d8e" args="(ivec ind)" --> 
    61 <a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#70a53f2bc37929bae899b0b24cda9d8e">rvsubselect</a> (ivec ind)</td></tr> 
     60<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2bf35b18a32aad419f0516273939628e"></a><!-- doxytag: member="RV::subselect" ref="2bf35b18a32aad419f0516273939628e" args="(ivec ind)" --> 
     61<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRV.html#2bf35b18a32aad419f0516273939628e">subselect</a> (ivec ind)</td></tr> 
    6262 
    6363<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Select only variables at indeces ind. <br></td></tr> 
     
    8080<p> 
    8181More?... <hr>The documentation for this class was generated from the following files:<ul> 
    82 <li>work/mixpp/<a class="el" href="libBM_8h-source.html">libBM.h</a><li>work/mixpp/libBM.cpp</ul> 
    83 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     82<li>work/mixpp/bdm/stat/<a class="el" href="libBM_8h-source.html">libBM.h</a><li>work/mixpp/bdm/stat/libBM.cpp</ul> 
     83<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:48 2008 for mixpp by&nbsp; 
    8484<a href="http://www.doxygen.org/index.html"> 
    8585<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classTrivialPF-members.html

    r8 r19  
    2222<h1>TrivialPF Member List</h1>This is the complete list of members for <a class="el" href="classTrivialPF.html">TrivialPF</a>, including all inherited members.<p><table> 
    2323  <tr class="memlist"><td><a class="el" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389">bayes</a>(const vec &amp;dt, bool evalll)</td><td><a class="el" href="classTrivialPF.html">TrivialPF</a></td><td><code> [virtual]</code></td></tr> 
    24   <tr class="memlist"><td><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">PF::bayes</a>(mat Dt)</td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
     24  <tr class="memlist"><td><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">BM::bayes</a>(mat Dt)</td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
    2525  <tr class="memlist"><td><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td><td><a class="el" href="classBM.html">BM</a></td><td></td></tr> 
    2626  <tr bgcolor="#f0f0f0"><td><b>n</b> (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [protected]</code></td></tr> 
     27  <tr bgcolor="#f0f0f0"><td><b>PF</b>(vec w) (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td></td></tr> 
    2728  <tr class="memlist"><td><a class="el" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19">resample</a>(RESAMPLING_METHOD method=SYSTEMATIC)</td><td><a class="el" href="classPF.html">PF</a></td><td></td></tr> 
    2829  <tr bgcolor="#f0f0f0"><td><b>TrivialPF</b>(mpdf &amp;par, mpdf &amp;obs, mpdf &amp;prop, int n0) (defined in <a class="el" href="classTrivialPF.html">TrivialPF</a>)</td><td><a class="el" href="classTrivialPF.html">TrivialPF</a></td><td></td></tr> 
    2930  <tr bgcolor="#f0f0f0"><td><b>TrivialPF</b>(mpdf &amp;par, mpdf &amp;obs, int n0) (defined in <a class="el" href="classTrivialPF.html">TrivialPF</a>)</td><td><a class="el" href="classTrivialPF.html">TrivialPF</a></td><td></td></tr> 
     31  <tr bgcolor="#f0f0f0"><td><b>URNG</b> (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [protected]</code></td></tr> 
    3032  <tr bgcolor="#f0f0f0"><td><b>w</b> (defined in <a class="el" href="classPF.html">PF</a>)</td><td><a class="el" href="classPF.html">PF</a></td><td><code> [protected]</code></td></tr> 
    31 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     33</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:49 2008 for mixpp by&nbsp; 
    3234<a href="http://www.doxygen.org/index.html"> 
    3335<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classTrivialPF.html

    r8 r19  
    2828Inheritance diagram for TrivialPF:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classTrivialPF.png" usemap="#TrivialPF_map" border="0" alt=""></center> 
    32 <map name="TrivialPF_map"> 
    33 <area href="classPF.html" alt="PF" shape="rect" coords="0,56,63,80"> 
    34 <area href="classBM.html" alt="BM" shape="rect" coords="0,0,63,24"> 
    35 </map> 
    36 </div> 
     30<p><center><img src="classTrivialPF__inherit__graph.png" border="0" usemap="#TrivialPF__inherit__map" alt="Inheritance graph"></center> 
     31<map name="TrivialPF__inherit__map"> 
     32<area shape="rect" href="classPF.html" title="A Particle Filter prototype." alt="" coords="23,84,60,111"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="20,7,63,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for TrivialPF:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classTrivialPF__coll__graph.png" border="0" usemap="#TrivialPF__coll__map" alt="Collaboration graph"></center> 
     38<map name="TrivialPF__coll__map"> 
     39<area shape="rect" href="classPF.html" title="A Particle Filter prototype." alt="" coords="8,119,45,145"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="5,7,48,33"><area shape="rect" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies." alt="" coords="69,119,125,145"><area shape="rect" title="prop\nobs\npar" alt="" coords="89,143,97,151"><area shape="rect" title="prop\nobs\npar" alt="" coords="65,245,73,253"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="79,7,116,33"><area shape="rect" title="rv\nrvc" alt="" coords="93,31,101,39"><area shape="rect" title="rv\nrvc" alt="" coords="93,115,101,123"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3741 
    3842<p> 
     
    8791</dl> 
    8892 
    89 <p>Implements <a class="el" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0">BM</a>.</p> 
     93<p>Reimplemented from <a class="el" href="classPF.html#eb06bd7d4325f22f54233967295793b9">PF</a>.</p> 
    9094 
    9195</div> 
    9296</div><p> 
    9397<hr>The documentation for this class was generated from the following files:<ul> 
    94 <li>work/mixpp/<a class="el" href="libPF_8h-source.html">libPF.h</a><li>work/mixpp/libPF.cpp</ul> 
    95 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     98<li>work/mixpp/bdm/estim/<a class="el" href="libPF_8h-source.html">libPF.h</a><li>work/mixpp/bdm/estim/libPF.cpp</ul> 
     99<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:49 2008 for mixpp by&nbsp; 
    96100<a href="http://www.doxygen.org/index.html"> 
    97101<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classeEF-members.html

    r8 r19  
    2323  <tr bgcolor="#f0f0f0"><td><b>dupdate</b>(mat &amp;v, double nu=1.0) (defined in <a class="el" href="classeEF.html">eEF</a>)</td><td><a class="el" href="classeEF.html">eEF</a></td><td><code> [inline, virtual]</code></td></tr> 
    2424  <tr bgcolor="#f0f0f0"><td><b>eval</b>(const vec &amp;val) (defined in <a class="el" href="classepdf.html">epdf</a>)</td><td><a class="el" href="classepdf.html">epdf</a></td><td><code> [inline, virtual]</code></td></tr> 
    25   <tr class="memlist"><td><a class="el" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">sample</a>()</td><td><a class="el" href="classepdf.html">epdf</a></td><td><code> [inline, virtual]</code></td></tr> 
     25  <tr class="memlist"><td><a class="el" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa">sample</a>()=0</td><td><a class="el" href="classepdf.html">epdf</a></td><td><code> [pure virtual]</code></td></tr> 
    2626  <tr bgcolor="#f0f0f0"><td><b>tupdate</b>(double phi, mat &amp;vbar, double nubar) (defined in <a class="el" href="classeEF.html">eEF</a>)</td><td><a class="el" href="classeEF.html">eEF</a></td><td><code> [inline, virtual]</code></td></tr> 
    27 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     27</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:42 2008 for mixpp by&nbsp; 
    2828<a href="http://www.doxygen.org/index.html"> 
    2929<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classeEF.html

    r8 r19  
    2828Inheritance diagram for eEF:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classeEF.png" usemap="#eEF_map" border="0" alt=""></center> 
    32 <map name="eEF_map"> 
    33 <area href="classepdf.html" alt="epdf" shape="rect" coords="0,0,97,24"> 
    34 <area href="classenorm.html" alt="enorm< sq_T >" shape="rect" coords="0,112,97,136"> 
    35 </map> 
    36 </div> 
     30<p><center><img src="classeEF__inherit__graph.png" border="0" usemap="#eEF__inherit__map" alt="Inheritance graph"></center> 
     31<map name="eEF__inherit__map"> 
     32<area shape="rect" href="classenorm.html" title="General exponential family density." alt="" coords="5,161,125,188"><area shape="rect" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density." alt="" coords="40,7,91,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for eEF:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classeEF__coll__graph.png" border="0" usemap="#eEF__coll__map" alt="Collaboration graph"></center> 
     38<map name="eEF__coll__map"> 
     39<area shape="rect" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density." alt="" coords="5,103,56,129"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="12,7,49,33"><area shape="rect" title="rv" alt="" coords="27,31,35,39"><area shape="rect" title="rv" alt="" coords="27,99,35,107"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3741 
    3842<p> 
     
    5155<p> 
    5256More?... <hr>The documentation for this class was generated from the following file:<ul> 
    53 <li>work/mixpp/<a class="el" href="libEF_8h-source.html">libEF.h</a></ul> 
    54 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     57<li>work/mixpp/bdm/stat/<a class="el" href="libEF_8h-source.html">libEF.h</a></ul> 
     58<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:42 2008 for mixpp by&nbsp; 
    5559<a href="http://www.doxygen.org/index.html"> 
    5660<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classenorm-members.html

    r8 r19  
    2525  <tr bgcolor="#f0f0f0"><td><b>enorm</b>() (defined in <a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a>)</td><td><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td><code> [inline]</code></td></tr> 
    2626  <tr bgcolor="#f0f0f0"><td><b>eval</b>(const vec &amp;val) (defined in <a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a>)</td><td><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td><code> [inline, virtual]</code></td></tr> 
     27  <tr bgcolor="#f0f0f0"><td><b>RNG</b> (defined in <a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a>)</td><td><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td></td></tr> 
    2728  <tr class="memlist"><td><a class="el" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">sample</a>()</td><td><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td><code> [inline, virtual]</code></td></tr> 
     29  <tr bgcolor="#f0f0f0"><td><b>sample</b>(int N) (defined in <a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a>)</td><td><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td><code> [inline]</code></td></tr> 
    2830  <tr bgcolor="#f0f0f0"><td><b>tupdate</b>(double phi, mat &amp;vbar, double nubar) (defined in <a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a>)</td><td><a class="el" href="classenorm.html">enorm&lt; sq_T &gt;</a></td><td><code> [inline, virtual]</code></td></tr> 
    29 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     31</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:43 2008 for mixpp by&nbsp; 
    3032<a href="http://www.doxygen.org/index.html"> 
    3133<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classenorm.html

    r8 r19  
    2828Inheritance diagram for enorm&lt; sq_T &gt;:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classenorm.png" usemap="#enorm< sq_T >_map" border="0" alt=""></center> 
    32 <map name="enorm< sq_T >_map"> 
    33 <area href="classeEF.html" alt="eEF" shape="rect" coords="0,56,97,80"> 
    34 <area href="classepdf.html" alt="epdf" shape="rect" coords="0,0,97,24"> 
    35 </map> 
    36 </div> 
     30<p><center><img src="classenorm__inherit__graph.png" border="0" usemap="#enorm_3_01sq__T_01_4__inherit__map" alt="Inheritance graph"></center> 
     31<map name="enorm_3_01sq__T_01_4__inherit__map"> 
     32<area shape="rect" href="classeEF.html" title="General conjugate exponential family posterior density." alt="" coords="43,84,88,111"><area shape="rect" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density." alt="" coords="40,7,91,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for enorm&lt; sq_T &gt;:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classenorm__coll__graph.png" border="0" usemap="#enorm_3_01sq__T_01_4__coll__map" alt="Collaboration graph"></center> 
     38<map name="enorm_3_01sq__T_01_4__coll__map"> 
     39<area shape="rect" href="classeEF.html" title="General conjugate exponential family posterior density." alt="" coords="8,183,53,209"><area shape="rect" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density." alt="" coords="5,103,56,129"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="12,7,49,33"><area shape="rect" title="rv" alt="" coords="27,31,35,39"><area shape="rect" title="rv" alt="" coords="27,99,35,107"><area shape="rect" title="R" alt="" coords="93,207,101,215"><area shape="rect" title="R" alt="" coords="77,275,85,283"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3741 
    3842<p> 
     
    5256 
    5357<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the required moment of the <a class="el" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.  <a href="#6020bcd89db2c9584bd8871001bd2023"></a><br></td></tr> 
     58<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="531bd094057afa768f4853a7e441920d"></a><!-- doxytag: member="enorm::sample" ref="531bd094057afa768f4853a7e441920d" args="(int N)" --> 
     59mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>sample</b> (int N)</td></tr> 
     60 
    5461<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93107f05a8e9b34b64853767200121a4"></a><!-- doxytag: member="enorm::eval" ref="93107f05a8e9b34b64853767200121a4" args="(const vec &amp;val)" --> 
    5562double&nbsp;</td><td class="memItemRight" valign="bottom"><b>eval</b> (const vec &amp;val)</td></tr> 
     63 
     64<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> 
     65<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4de82a0d7ba9eaf31206318ae35d0d5"></a><!-- doxytag: member="enorm::RNG" ref="a4de82a0d7ba9eaf31206318ae35d0d5" args="" --> 
     66Normal_RNG&nbsp;</td><td class="memItemRight" valign="bottom"><b>RNG</b></td></tr> 
    5667 
    5768</table> 
     
    8495<p> 
    8596Returns a sample from the density, $x  epdf(rv)$  
    86 <p>Reimplemented from <a class="el" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">epdf</a>.</p> 
     97<p>Implements <a class="el" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa">epdf</a>.</p> 
    8798 
    8899</div> 
    89100</div><p> 
    90101<hr>The documentation for this class was generated from the following file:<ul> 
    91 <li>work/mixpp/<a class="el" href="libEF_8h-source.html">libEF.h</a></ul> 
    92 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     102<li>work/mixpp/bdm/stat/<a class="el" href="libEF_8h-source.html">libEF.h</a></ul> 
     103<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:43 2008 for mixpp by&nbsp; 
    93104<a href="http://www.doxygen.org/index.html"> 
    94105<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classepdf-members.html

    r8 r19  
    2222<h1>epdf Member List</h1>This is the complete list of members for <a class="el" href="classepdf.html">epdf</a>, including all inherited members.<p><table> 
    2323  <tr bgcolor="#f0f0f0"><td><b>eval</b>(const vec &amp;val) (defined in <a class="el" href="classepdf.html">epdf</a>)</td><td><a class="el" href="classepdf.html">epdf</a></td><td><code> [inline, virtual]</code></td></tr> 
    24   <tr class="memlist"><td><a class="el" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">sample</a>()</td><td><a class="el" href="classepdf.html">epdf</a></td><td><code> [inline, virtual]</code></td></tr> 
    25 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     24  <tr class="memlist"><td><a class="el" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa">sample</a>()=0</td><td><a class="el" href="classepdf.html">epdf</a></td><td><code> [pure virtual]</code></td></tr> 
     25</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:44 2008 for mixpp by&nbsp; 
    2626<a href="http://www.doxygen.org/index.html"> 
    2727<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classepdf.html

    r8 r19  
    2828Inheritance diagram for epdf:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classepdf.png" usemap="#epdf_map" border="0" alt=""></center> 
    32 <map name="epdf_map"> 
    33 <area href="classeEF.html" alt="eEF" shape="rect" coords="0,56,97,80"> 
    34 <area href="classenorm.html" alt="enorm< sq_T >" shape="rect" coords="0,112,97,136"> 
    35 </map> 
    36 </div> 
     30<p><center><img src="classepdf__inherit__graph.png" border="0" usemap="#epdf__inherit__map" alt="Inheritance graph"></center> 
     31<map name="epdf__inherit__map"> 
     32<area shape="rect" href="classeEF.html" title="General conjugate exponential family posterior density." alt="" coords="43,84,88,111"><area shape="rect" href="classenorm.html" title="General exponential family density." alt="" coords="5,161,125,188"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for epdf:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classepdf__coll__graph.png" border="0" usemap="#epdf__coll__map" alt="Collaboration graph"></center> 
     38<map name="epdf__coll__map"> 
     39<area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="12,7,49,33"><area shape="rect" title="rv" alt="" coords="27,31,35,39"><area shape="rect" title="rv" alt="" coords="27,99,35,107"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3741 
    3842<p> 
     
    4044<tr><td></td></tr> 
    4145<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 
    42 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">sample</a> ()</td></tr> 
     46<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa">sample</a> ()=0</td></tr> 
    4347 
    44 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the required moment of the <a class="el" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.  <a href="#e6ce993603a95c2645eb86305ea51396"></a><br></td></tr> 
     48<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the required moment of the <a class="el" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.  <a href="#7f74d871d50b9ff360f1b3879092a9fa"></a><br></td></tr> 
    4549<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f333ceeb88ebc37d81fcd4cea4526bfc"></a><!-- doxytag: member="epdf::eval" ref="f333ceeb88ebc37d81fcd4cea4526bfc" args="(const vec &amp;val)" --> 
    4650virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><b>eval</b> (const vec &amp;val)</td></tr> 
     
    4953<hr><a name="_details"></a><h2>Detailed Description</h2> 
    5054Probability density function with numerical statistics, e.g. posterior density. <hr><h2>Member Function Documentation</h2> 
    51 <a class="anchor" name="e6ce993603a95c2645eb86305ea51396"></a><!-- doxytag: member="epdf::sample" ref="e6ce993603a95c2645eb86305ea51396" args="()" --> 
     55<a class="anchor" name="7f74d871d50b9ff360f1b3879092a9fa"></a><!-- doxytag: member="epdf::sample" ref="7f74d871d50b9ff360f1b3879092a9fa" args="()=0" --> 
    5256<div class="memitem"> 
    5357<div class="memproto"> 
     
    5862          <td class="paramname">          </td> 
    5963          <td>&nbsp;)&nbsp;</td> 
    60           <td width="100%"><code> [inline, virtual]</code></td> 
     64          <td width="100%"><code> [pure virtual]</code></td> 
    6165        </tr> 
    6266      </table> 
     
    6872<p> 
    6973Returns a sample from the density, $x  epdf(rv)$  
    70 <p>Reimplemented in <a class="el" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">enorm&lt; sq_T &gt;</a>.</p> 
     74<p>Implemented in <a class="el" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">enorm&lt; sq_T &gt;</a>.</p> 
    7175 
    7276</div> 
    7377</div><p> 
    7478<hr>The documentation for this class was generated from the following file:<ul> 
    75 <li>work/mixpp/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
    76 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     79<li>work/mixpp/bdm/stat/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
     80<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:44 2008 for mixpp by&nbsp; 
    7781<a href="http://www.doxygen.org/index.html"> 
    7882<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classfnc-members.html

    r8 r19  
    2121</div> 
    2222<h1>fnc Member List</h1>This is the complete list of members for <a class="el" href="classfnc.html">fnc</a>, including all inherited members.<p><table> 
    23 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     23</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:44 2008 for mixpp by&nbsp; 
    2424<a href="http://www.doxygen.org/index.html"> 
    2525<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classfnc.html

    r8 r19  
    2525<code>#include &lt;<a class="el" href="libBM_8h-source.html">libBM.h</a>&gt;</code> 
    2626<p> 
     27<div class="dynheader"> 
     28Inheritance diagram for fnc:</div> 
     29<div class="dynsection"> 
     30<p><center><img src="classfnc__inherit__graph.png" border="0" usemap="#fnc__inherit__map" alt="Inheritance graph"></center> 
     31<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     32<div class="dynheader"> 
     33Collaboration diagram for fnc:</div> 
     34<div class="dynsection"> 
     35<p><center><img src="classfnc__coll__graph.png" border="0" usemap="#fnc__coll__map" alt="Collaboration graph"></center> 
     36<map name="fnc__coll__map"> 
     37<area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="7,7,44,33"><area shape="rect" title="rv" alt="" coords="21,31,29,39"><area shape="rect" title="rv" alt="" coords="21,99,29,107"></map> 
     38<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    2739 
    2840<p> 
     
    3244<hr><a name="_details"></a><h2>Detailed Description</h2> 
    3345Class representing function of variables. <hr>The documentation for this class was generated from the following file:<ul> 
    34 <li>work/mixpp/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
    35 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     46<li>work/mixpp/bdm/stat/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
     47<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:44 2008 for mixpp by&nbsp; 
    3648<a href="http://www.doxygen.org/index.html"> 
    3749<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classfsqmat-members.html

    r8 r19  
    2222<h1>fsqmat Member List</h1>This is the complete list of members for <a class="el" href="classfsqmat.html">fsqmat</a>, including all inherited members.<p><table> 
    2323  <tr class="memlist"><td><a class="el" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed">cols</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [private, pure virtual]</code></td></tr> 
     24  <tr bgcolor="#f0f0f0"><td><b>dim</b> (defined in <a class="el" href="classsqmat.html">sqmat</a>)</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [private]</code></td></tr> 
    2425  <tr class="memlist"><td><a class="el" href="classsqmat.html#5c852819589f74cdaefbd648c0ce8547">logdet</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [private, pure virtual]</code></td></tr> 
    25   <tr bgcolor="#f0f0f0"><td><b>operator&lt;&lt;</b> (defined in <a class="el" href="classsqmat.html">sqmat</a>)</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [friend]</code></td></tr> 
    2626  <tr class="memlist"><td><a class="el" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be">qform</a>(vec &amp;v)=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [private, pure virtual]</code></td></tr> 
    2727  <tr class="memlist"><td><a class="el" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7">rows</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [private, pure virtual]</code></td></tr> 
    28 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     28  <tr class="memlist"><td><a class="el" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2">sqrt_mult</a>(vec &amp;v)=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [private, pure virtual]</code></td></tr> 
     29</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:45 2008 for mixpp by&nbsp; 
    2930<a href="http://www.doxygen.org/index.html"> 
    3031<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classfsqmat.html

    r8 r19  
    2828Inheritance diagram for fsqmat:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classfsqmat.png" usemap="#fsqmat_map" border="0" alt=""></center> 
    32 <map name="fsqmat_map"> 
    33 <area href="classsqmat.html" alt="sqmat" shape="rect" coords="0,0,47,24"> 
    34 </map> 
    35 </div> 
     30<p><center><img src="classfsqmat__inherit__graph.png" border="0" usemap="#fsqmat__inherit__map" alt="Inheritance graph"></center> 
     31<map name="fsqmat__inherit__map"> 
     32<area shape="rect" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square&#45;root form..." alt="" coords="8,7,69,33"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     34<div class="dynheader"> 
     35Collaboration diagram for fsqmat:</div> 
     36<div class="dynsection"> 
     37<p><center><img src="classfsqmat__coll__graph.png" border="0" usemap="#fsqmat__coll__map" alt="Collaboration graph"></center> 
     38<map name="fsqmat__coll__map"> 
     39<area shape="rect" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square&#45;root form..." alt="" coords="8,7,69,33"></map> 
     40<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3641 
    3742<p> 
     
    4348<p> 
    4449This class can be used to compare performance of algorithms using decomposed matrices with perormance of the same algorithms using full matrices; <hr>The documentation for this class was generated from the following file:<ul> 
    45 <li>work/mixpp/<a class="el" href="libDC_8h-source.html">libDC.h</a></ul> 
    46 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     50<li>work/mixpp/bdm/math/<a class="el" href="libDC_8h-source.html">libDC.h</a></ul> 
     51<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:45 2008 for mixpp by&nbsp; 
    4752<a href="http://www.doxygen.org/index.html"> 
    4853<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classmpdf-members.html

    r8 r19  
    2323  <tr bgcolor="#f0f0f0"><td><b>condition</b>(vec &amp;cond) (defined in <a class="el" href="classmpdf.html">mpdf</a>)</td><td><a class="el" href="classmpdf.html">mpdf</a></td><td><code> [inline, virtual]</code></td></tr> 
    2424  <tr class="memlist"><td><a class="el" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41">samplecond</a>(vec &amp;cond, double lik)</td><td><a class="el" href="classmpdf.html">mpdf</a></td><td><code> [inline, virtual]</code></td></tr> 
    25 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     25</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:47 2008 for mixpp by&nbsp; 
    2626<a href="http://www.doxygen.org/index.html"> 
    2727<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classmpdf.html

    r8 r19  
    2525<code>#include &lt;<a class="el" href="libBM_8h-source.html">libBM.h</a>&gt;</code> 
    2626<p> 
    27 Inherited by mEF. 
    28 <p> 
     27<div class="dynheader"> 
     28Inheritance diagram for mpdf:</div> 
     29<div class="dynsection"> 
     30<p><center><img src="classmpdf__inherit__graph.png" border="0" usemap="#mpdf__inherit__map" alt="Inheritance graph"></center> 
     31<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
     32<div class="dynheader"> 
     33Collaboration diagram for mpdf:</div> 
     34<div class="dynsection"> 
     35<p><center><img src="classmpdf__coll__graph.png" border="0" usemap="#mpdf__coll__map" alt="Collaboration graph"></center> 
     36<map name="mpdf__coll__map"> 
     37<area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="15,7,52,33"><area shape="rect" title="rv\nrvc" alt="" coords="29,31,37,39"><area shape="rect" title="rv\nrvc" alt="" coords="29,115,37,123"></map> 
     38<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    2939 
    3040<p> 
     
    7383</div><p> 
    7484<hr>The documentation for this class was generated from the following file:<ul> 
    75 <li>work/mixpp/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
    76 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     85<li>work/mixpp/bdm/stat/<a class="el" href="libBM_8h-source.html">libBM.h</a></ul> 
     86<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:47 2008 for mixpp by&nbsp; 
    7787<a href="http://www.doxygen.org/index.html"> 
    7888<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classsqmat-members.html

    r8 r19  
    2323  <tr class="memlist"><td><a class="el" href="classsqmat.html#6fca246f9eabbdeb8cac03030e826b5e">clear</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    2424  <tr class="memlist"><td><a class="el" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed">cols</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
     25  <tr bgcolor="#f0f0f0"><td><b>dim</b> (defined in <a class="el" href="classsqmat.html">sqmat</a>)</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [protected]</code></td></tr> 
    2526  <tr class="memlist"><td><a class="el" href="classsqmat.html#5c852819589f74cdaefbd648c0ce8547">logdet</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    2627  <tr class="memlist"><td><a class="el" href="classsqmat.html#faa3bc90be142adde9cf74f573c70157">mult_sym</a>(const mat &amp;C, bool trans=true)=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    27   <tr bgcolor="#f0f0f0"><td><b>operator&lt;&lt;</b> (defined in <a class="el" href="classsqmat.html">sqmat</a>)</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [friend]</code></td></tr> 
    2828  <tr class="memlist"><td><a class="el" href="classsqmat.html#b223484796661f2dadb5607a86ce0581">opupdt</a>(const vec &amp;v, double w)=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    2929  <tr class="memlist"><td><a class="el" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be">qform</a>(vec &amp;v)=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    3030  <tr class="memlist"><td><a class="el" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7">rows</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
     31  <tr class="memlist"><td><a class="el" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2">sqrt_mult</a>(vec &amp;v)=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    3132  <tr class="memlist"><td><a class="el" href="classsqmat.html#9a5b6fddfeb42339e1dc9b978a2590fc">to_mat</a>()=0</td><td><a class="el" href="classsqmat.html">sqmat</a></td><td><code> [pure virtual]</code></td></tr> 
    32 </table><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     33</table><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:48 2008 for mixpp by&nbsp; 
    3334<a href="http://www.doxygen.org/index.html"> 
    3435<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/classsqmat.html

    r8 r19  
    2828Inheritance diagram for sqmat:</div> 
    2929<div class="dynsection"> 
    30  
    31 <p><center><img src="classsqmat.png" usemap="#sqmat_map" border="0" alt=""></center> 
    32 <map name="sqmat_map"> 
    33 <area href="classfsqmat.html" alt="fsqmat" shape="rect" coords="0,56,47,80"> 
    34 </map> 
    35 </div> 
     30<p><center><img src="classsqmat__inherit__graph.png" border="0" usemap="#sqmat__inherit__map" alt="Inheritance graph"></center> 
     31<map name="sqmat__inherit__map"> 
     32<area shape="rect" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix." alt="" coords="5,84,72,111"></map> 
     33<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 
    3634 
    3735<p> 
     
    5250 
    5351<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Logarithm of a determinant. <br></td></tr> 
     52<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2">sqrt_mult</a> (vec &amp;v)=0</td></tr> 
     53 
     54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiplies square root of $V$ by vector $x$.  <a href="#b5236c8a050199e1a9d338b0da1a08d2"></a><br></td></tr> 
    5455<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44e079468bc8bfccf634dc85b32ba6be"></a><!-- doxytag: member="sqmat::qform" ref="44e079468bc8bfccf634dc85b32ba6be" args="(vec &amp;v)=0" --> 
    5556virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be">qform</a> (vec &amp;v)=0</td></tr> 
     
    6869 
    6970<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reimplementing common functions of mat: <a class="el" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">cols()</a>. <br></td></tr> 
    70 <tr><td colspan="2"><br><h2>Friends</h2></td></tr> 
    71 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c9eb5aa871432ddb9c5a45ddbbb19eab"></a><!-- doxytag: member="sqmat::operator&lt;&lt;" ref="c9eb5aa871432ddb9c5a45ddbbb19eab" args="(std::ostream &amp;os, sqmat &amp;sq)" --> 
    72 std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, <a class="el" href="classsqmat.html">sqmat</a> &amp;sq)</td></tr> 
     71<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> 
     72<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0abed904bdc0882373ba9adba919689d"></a><!-- doxytag: member="sqmat::dim" ref="0abed904bdc0882373ba9adba919689d" args="" --> 
     73int&nbsp;</td><td class="memItemRight" valign="bottom"><b>dim</b></td></tr> 
    7374 
    7475</table> 
     
    149150</div> 
    150151</div><p> 
     152<a class="anchor" name="b5236c8a050199e1a9d338b0da1a08d2"></a><!-- doxytag: member="sqmat::sqrt_mult" ref="b5236c8a050199e1a9d338b0da1a08d2" args="(vec &amp;v)=0" --> 
     153<div class="memitem"> 
     154<div class="memproto"> 
     155      <table class="memname"> 
     156        <tr> 
     157          <td class="memname">virtual vec sqmat::sqrt_mult           </td> 
     158          <td>(</td> 
     159          <td class="paramtype">vec &amp;&nbsp;</td> 
     160          <td class="paramname"> <em>v</em>          </td> 
     161          <td>&nbsp;)&nbsp;</td> 
     162          <td width="100%"><code> [pure virtual]</code></td> 
     163        </tr> 
     164      </table> 
     165</div> 
     166<div class="memdoc"> 
     167 
     168<p> 
     169Multiplies square root of $V$ by vector $x$.  
     170<p> 
     171Used e.g. in generating normal samples.  
     172</div> 
     173</div><p> 
    151174<hr>The documentation for this class was generated from the following file:<ul> 
    152 <li>work/mixpp/<a class="el" href="libDC_8h-source.html">libDC.h</a></ul> 
    153 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     175<li>work/mixpp/bdm/math/<a class="el" href="libDC_8h-source.html">libDC.h</a></ul> 
     176<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:48 2008 for mixpp by&nbsp; 
    154177<a href="http://www.doxygen.org/index.html"> 
    155178<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/files.html

    r8 r19  
    1414</div> 
    1515<h1>mixpp File List</h1>Here is a list of all documented files with brief descriptions:<table> 
    16   <tr><td class="indexkey">work/mixpp/<b>itpp_ext.h</b> <a href="itpp__ext_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr> 
    17   <tr><td class="indexkey">work/mixpp/<a class="el" href="libBM_8h.html">libBM.h</a> <a href="libBM_8h-source.html">[code]</a></td><td class="indexvalue">Bayesian Models (bm) that use Bayes rule to learn from observations </td></tr> 
    18   <tr><td class="indexkey">work/mixpp/<a class="el" href="libDC_8h.html">libDC.h</a> <a href="libDC_8h-source.html">[code]</a></td><td class="indexvalue">Matrices in decomposed forms (LDL', LU, UDU', etc) </td></tr> 
    19   <tr><td class="indexkey">work/mixpp/<a class="el" href="libEF_8h.html">libEF.h</a> <a href="libEF_8h-source.html">[code]</a></td><td class="indexvalue">Probability distributions for Exponential Family models </td></tr> 
    20   <tr><td class="indexkey">work/mixpp/<a class="el" href="libKF_8h.html">libKF.h</a> <a href="libKF_8h-source.html">[code]</a></td><td class="indexvalue">Bayesian Filtering for linear Gaussian models (<a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> Filter) and extensions </td></tr> 
    21   <tr><td class="indexkey">work/mixpp/<a class="el" href="libPF_8h.html">libPF.h</a> <a href="libPF_8h-source.html">[code]</a></td><td class="indexvalue">Bayesian Filtering using stochastic sampling (Particle Filters) </td></tr> 
     16  <tr><td class="indexkey">work/mixpp/bdm/<b>itpp_ext.h</b> <a href="itpp__ext_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr> 
     17  <tr><td class="indexkey">work/mixpp/bdm/estim/<a class="el" href="libKF_8h.html">libKF.h</a> <a href="libKF_8h-source.html">[code]</a></td><td class="indexvalue">Bayesian Filtering for linear Gaussian models (<a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> Filter) and extensions </td></tr> 
     18  <tr><td class="indexkey">work/mixpp/bdm/estim/<a class="el" href="libPF_8h.html">libPF.h</a> <a href="libPF_8h-source.html">[code]</a></td><td class="indexvalue">Bayesian Filtering using stochastic sampling (Particle Filters) </td></tr> 
     19  <tr><td class="indexkey">work/mixpp/bdm/math/<a class="el" href="libDC_8h.html">libDC.h</a> <a href="libDC_8h-source.html">[code]</a></td><td class="indexvalue">Matrices in decomposed forms (LDL', LU, UDU', etc) </td></tr> 
     20  <tr><td class="indexkey">work/mixpp/bdm/stat/<a class="el" href="libBM_8h.html">libBM.h</a> <a href="libBM_8h-source.html">[code]</a></td><td class="indexvalue">Bayesian Models (bm) that use Bayes rule to learn from observations </td></tr> 
     21  <tr><td class="indexkey">work/mixpp/bdm/stat/<a class="el" href="libDS_8h.html">libDS.h</a> <a href="libDS_8h-source.html">[code]</a></td><td class="indexvalue">Common DataSources </td></tr> 
     22  <tr><td class="indexkey">work/mixpp/bdm/stat/<a class="el" href="libEF_8h.html">libEF.h</a> <a href="libEF_8h-source.html">[code]</a></td><td class="indexvalue">Probability distributions for Exponential Family models </td></tr> 
     23  <tr><td class="indexkey">work/mixpp/bdm/stat/<b>libFN.h</b> <a href="libFN_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr> 
    2224</table> 
    23 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:12 2008 for mixpp by&nbsp; 
     25<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:50 2008 for mixpp by&nbsp; 
    2426<a href="http://www.doxygen.org/index.html"> 
    2527<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/functions.html

    r8 r19  
    3030<div class="tabs"> 
    3131  <ul> 
     32    <li><a href="#index_a"><span>a</span></a></li> 
    3233    <li><a href="#index_b"><span>b</span></a></li> 
    3334    <li><a href="#index_c"><span>c</span></a></li> 
     35    <li><a href="#index_d"><span>d</span></a></li> 
     36    <li><a href="#index_f"><span>f</span></a></li> 
     37    <li><a href="#index_g"><span>g</span></a></li> 
    3438    <li><a href="#index_k"><span>k</span></a></li> 
    3539    <li><a href="#index_l"><span>l</span></a></li> 
     
    4145    <li><a href="#index_s"><span>s</span></a></li> 
    4246    <li><a href="#index_t"><span>t</span></a></li> 
     47    <li><a href="#index_u"><span>u</span></a></li> 
     48    <li><a href="#index_w"><span>w</span></a></li> 
    4349  </ul> 
    4450</div> 
     
    4753Here is a list of all documented class members with links to the class documentation for each member: 
    4854<p> 
     55<h3><a class="anchor" name="index_a">- a -</a></h3><ul> 
     56<li>add() 
     57: <a class="el" href="classRV.html#f068a86abb5a6e46fcf76c939d2ed2ec">RV</a> 
     58</ul> 
    4959<h3><a class="anchor" name="index_b">- b -</a></h3><ul> 
    5060<li>bayes() 
    51 : <a class="el" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0">BM</a> 
     61: <a class="el" href="classKalmanFull.html#048b13739b94c331cda08249b278552b">KalmanFull</a> 
     62, <a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">BM</a> 
    5263, <a class="el" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389">TrivialPF</a> 
     64, <a class="el" href="classPF.html#eb06bd7d4325f22f54233967295793b9">PF</a> 
    5365, <a class="el" href="classKalman.html#e945d9205ca14acbd83ba80ea6f72b8e">Kalman&lt; sq_T &gt;</a> 
    54 , <a class="el" href="classKalmanFull.html#048b13739b94c331cda08249b278552b">KalmanFull</a> 
    55 , <a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">BM</a> 
    5666</ul> 
    5767<h3><a class="anchor" name="index_c">- c -</a></h3><ul> 
     
    6070<li>cols() 
    6171: <a class="el" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed">sqmat</a> 
     72<li>count() 
     73: <a class="el" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04">RV</a> 
     74</ul> 
     75<h3><a class="anchor" name="index_d">- d -</a></h3><ul> 
     76<li>Drv 
     77: <a class="el" href="classDS.html#1012025a1a3a1fdd24aa48698a3d3454">DS</a> 
     78</ul> 
     79<h3><a class="anchor" name="index_f">- f -</a></h3><ul> 
     80<li>find() 
     81: <a class="el" href="classRV.html#6b078b1086224aca3a9e5a203e647fb6">RV</a> 
     82</ul> 
     83<h3><a class="anchor" name="index_g">- g -</a></h3><ul> 
     84<li>getdata() 
     85: <a class="el" href="classDS.html#db2dacc9e71a36eeb9c5c2ee402eeeb1">DS</a> 
     86, <a class="el" href="classMemDS.html#900f1e1c9eb950f87e557c068628e60e">MemDS</a> 
     87, <a class="el" href="classDS.html#4027575bc66ea358f9b03dd3be28fe1e">DS</a> 
    6288</ul> 
    6389<h3><a class="anchor" name="index_k">- k -</a></h3><ul> 
     
    6894</ul> 
    6995<h3><a class="anchor" name="index_l">- l -</a></h3><ul> 
    70 <li>length() 
    71 : <a class="el" href="classRV.html#a764092415291a0e6452a3711749d18e">RV</a> 
     96<li>linkrvs() 
     97: <a class="el" href="classDS.html#9a35ca9c9321dce2bf63bf668f785b75">DS</a> 
     98, <a class="el" href="classMemDS.html#5f72b555e0e4a61de1440c457cf57007">MemDS</a> 
    7299<li>ll 
    73100: <a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">BM</a> 
     
    106133<li>RV() 
    107134: <a class="el" href="classRV.html#cf911c3900214460ade1366b04058462">RV</a> 
    108 <li>rvadd() 
    109 : <a class="el" href="classRV.html#f47ab0015ebac822da3b2e00f42a8fc6">RV</a> 
    110 <li>rvfind() 
    111 : <a class="el" href="classRV.html#45b869bced40dc3fa0df584aaf8228c0">RV</a> 
    112 <li>rvsubselect() 
    113 : <a class="el" href="classRV.html#70a53f2bc37929bae899b0b24cda9d8e">RV</a> 
    114 <li>rvsubt() 
    115 : <a class="el" href="classRV.html#269023ac4d41b21c4e1f7f17db1603b9">RV</a> 
    116135</ul> 
    117136<h3><a class="anchor" name="index_s">- s -</a></h3><ul> 
    118137<li>sample() 
    119 : <a class="el" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">epdf</a> 
     138: <a class="el" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa">epdf</a> 
    120139, <a class="el" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">enorm&lt; sq_T &gt;</a> 
    121140<li>samplecond() 
    122141: <a class="el" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41">mpdf</a> 
     142<li>sqrt_mult() 
     143: <a class="el" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2">sqmat</a> 
     144<li>step() 
     145: <a class="el" href="classDS.html#470ba89e8e7c3c4d830803221b4e9be6">DS</a> 
     146, <a class="el" href="classMemDS.html#21916feb3e5ff960855c09b06a0d279b">MemDS</a> 
     147<li>subselect() 
     148: <a class="el" href="classRV.html#2bf35b18a32aad419f0516273939628e">RV</a> 
     149<li>subt() 
     150: <a class="el" href="classRV.html#4c5ec5e913fc598e242cb930ae8bdf4a">RV</a> 
    123151</ul> 
    124152<h3><a class="anchor" name="index_t">- t -</a></h3><ul> 
     
    128156: <a class="el" href="classsqmat.html#9a5b6fddfeb42339e1dc9b978a2590fc">sqmat</a> 
    129157</ul> 
    130 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     158<h3><a class="anchor" name="index_u">- u -</a></h3><ul> 
     159<li>Urv 
     160: <a class="el" href="classDS.html#0a88ffaeb3c7c2cf30c69bc41a000629">DS</a> 
     161</ul> 
     162<h3><a class="anchor" name="index_w">- w -</a></h3><ul> 
     163<li>write() 
     164: <a class="el" href="classDS.html#0dfb6788b70c0d48a1f5276ed6c93039">DS</a> 
     165, <a class="el" href="classMemDS.html#6279bf18d44343750747ecc12e050f09">MemDS</a> 
     166, <a class="el" href="classDS.html#f4ae51a3bc1267a6a52fc229973afe85">DS</a> 
     167</ul> 
     168<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    131169<a href="http://www.doxygen.org/index.html"> 
    132170<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/functions_func.html

    r8 r19  
    2828  </ul> 
    2929</div> 
     30<div class="tabs"> 
     31  <ul> 
     32    <li><a href="#index_a"><span>a</span></a></li> 
     33    <li><a href="#index_b"><span>b</span></a></li> 
     34    <li><a href="#index_c"><span>c</span></a></li> 
     35    <li><a href="#index_f"><span>f</span></a></li> 
     36    <li><a href="#index_g"><span>g</span></a></li> 
     37    <li><a href="#index_k"><span>k</span></a></li> 
     38    <li><a href="#index_l"><span>l</span></a></li> 
     39    <li><a href="#index_m"><span>m</span></a></li> 
     40    <li><a href="#index_o"><span>o</span></a></li> 
     41    <li><a href="#index_q"><span>q</span></a></li> 
     42    <li><a href="#index_r"><span>r</span></a></li> 
     43    <li><a href="#index_s"><span>s</span></a></li> 
     44    <li><a href="#index_t"><span>t</span></a></li> 
     45    <li><a href="#index_w"><span>w</span></a></li> 
     46  </ul> 
     47</div> 
     48 
     49<p> 
    3050&nbsp; 
    3151<p> 
    32 <ul> 
     52<h3><a class="anchor" name="index_a">- a -</a></h3><ul> 
     53<li>add() 
     54: <a class="el" href="classRV.html#f068a86abb5a6e46fcf76c939d2ed2ec">RV</a> 
     55</ul> 
     56<h3><a class="anchor" name="index_b">- b -</a></h3><ul> 
    3357<li>bayes() 
    34 : <a class="el" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0">BM</a> 
     58: <a class="el" href="classKalmanFull.html#048b13739b94c331cda08249b278552b">KalmanFull</a> 
     59, <a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">BM</a> 
    3560, <a class="el" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389">TrivialPF</a> 
     61, <a class="el" href="classPF.html#eb06bd7d4325f22f54233967295793b9">PF</a> 
    3662, <a class="el" href="classKalman.html#e945d9205ca14acbd83ba80ea6f72b8e">Kalman&lt; sq_T &gt;</a> 
    37 , <a class="el" href="classKalmanFull.html#048b13739b94c331cda08249b278552b">KalmanFull</a> 
    38 , <a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">BM</a> 
     63</ul> 
     64<h3><a class="anchor" name="index_c">- c -</a></h3><ul> 
    3965<li>clear() 
    4066: <a class="el" href="classsqmat.html#6fca246f9eabbdeb8cac03030e826b5e">sqmat</a> 
    4167<li>cols() 
    4268: <a class="el" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed">sqmat</a> 
     69<li>count() 
     70: <a class="el" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04">RV</a> 
     71</ul> 
     72<h3><a class="anchor" name="index_f">- f -</a></h3><ul> 
     73<li>find() 
     74: <a class="el" href="classRV.html#6b078b1086224aca3a9e5a203e647fb6">RV</a> 
     75</ul> 
     76<h3><a class="anchor" name="index_g">- g -</a></h3><ul> 
     77<li>getdata() 
     78: <a class="el" href="classDS.html#db2dacc9e71a36eeb9c5c2ee402eeeb1">DS</a> 
     79, <a class="el" href="classMemDS.html#900f1e1c9eb950f87e557c068628e60e">MemDS</a> 
     80, <a class="el" href="classDS.html#4027575bc66ea358f9b03dd3be28fe1e">DS</a> 
     81</ul> 
     82<h3><a class="anchor" name="index_k">- k -</a></h3><ul> 
    4383<li>Kalman() 
    4484: <a class="el" href="classKalman.html#83118f4bd2ecbc70b03cfd573088ed6f">Kalman&lt; sq_T &gt;</a> 
    4585<li>KalmanFull() 
    4686: <a class="el" href="classKalmanFull.html#7197ab6e7380790006394eabd3b97043">KalmanFull</a> 
    47 <li>length() 
    48 : <a class="el" href="classRV.html#a764092415291a0e6452a3711749d18e">RV</a> 
     87</ul> 
     88<h3><a class="anchor" name="index_l">- l -</a></h3><ul> 
     89<li>linkrvs() 
     90: <a class="el" href="classDS.html#9a35ca9c9321dce2bf63bf668f785b75">DS</a> 
     91, <a class="el" href="classMemDS.html#5f72b555e0e4a61de1440c457cf57007">MemDS</a> 
    4992<li>logdet() 
    5093: <a class="el" href="classsqmat.html#5c852819589f74cdaefbd648c0ce8547">sqmat</a> 
     94</ul> 
     95<h3><a class="anchor" name="index_m">- m -</a></h3><ul> 
    5196<li>mult_sym() 
    5297: <a class="el" href="classsqmat.html#faa3bc90be142adde9cf74f573c70157">sqmat</a> 
     98</ul> 
     99<h3><a class="anchor" name="index_o">- o -</a></h3><ul> 
    53100<li>operator()() 
    54101: <a class="el" href="classRV.html#28bbcb8873bafdac317bafb7b481cc45">RV</a> 
    55102<li>opupdt() 
    56103: <a class="el" href="classsqmat.html#b223484796661f2dadb5607a86ce0581">sqmat</a> 
     104</ul> 
     105<h3><a class="anchor" name="index_q">- q -</a></h3><ul> 
    57106<li>qform() 
    58107: <a class="el" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be">sqmat</a> 
     108</ul> 
     109<h3><a class="anchor" name="index_r">- r -</a></h3><ul> 
    59110<li>resample() 
    60111: <a class="el" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19">PF</a> 
     
    63114<li>RV() 
    64115: <a class="el" href="classRV.html#cf911c3900214460ade1366b04058462">RV</a> 
    65 <li>rvadd() 
    66 : <a class="el" href="classRV.html#f47ab0015ebac822da3b2e00f42a8fc6">RV</a> 
    67 <li>rvfind() 
    68 : <a class="el" href="classRV.html#45b869bced40dc3fa0df584aaf8228c0">RV</a> 
    69 <li>rvsubselect() 
    70 : <a class="el" href="classRV.html#70a53f2bc37929bae899b0b24cda9d8e">RV</a> 
    71 <li>rvsubt() 
    72 : <a class="el" href="classRV.html#269023ac4d41b21c4e1f7f17db1603b9">RV</a> 
     116</ul> 
     117<h3><a class="anchor" name="index_s">- s -</a></h3><ul> 
    73118<li>sample() 
    74 : <a class="el" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">epdf</a> 
     119: <a class="el" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa">epdf</a> 
    75120, <a class="el" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">enorm&lt; sq_T &gt;</a> 
    76121<li>samplecond() 
    77122: <a class="el" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41">mpdf</a> 
     123<li>sqrt_mult() 
     124: <a class="el" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2">sqmat</a> 
     125<li>step() 
     126: <a class="el" href="classDS.html#470ba89e8e7c3c4d830803221b4e9be6">DS</a> 
     127, <a class="el" href="classMemDS.html#21916feb3e5ff960855c09b06a0d279b">MemDS</a> 
     128<li>subselect() 
     129: <a class="el" href="classRV.html#2bf35b18a32aad419f0516273939628e">RV</a> 
     130<li>subt() 
     131: <a class="el" href="classRV.html#4c5ec5e913fc598e242cb930ae8bdf4a">RV</a> 
     132</ul> 
     133<h3><a class="anchor" name="index_t">- t -</a></h3><ul> 
    78134<li>t() 
    79135: <a class="el" href="classRV.html#e0a158d53ab9430627241f844f4c9a60">RV</a> 
     
    81137: <a class="el" href="classsqmat.html#9a5b6fddfeb42339e1dc9b978a2590fc">sqmat</a> 
    82138</ul> 
    83 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     139<h3><a class="anchor" name="index_w">- w -</a></h3><ul> 
     140<li>write() 
     141: <a class="el" href="classDS.html#0dfb6788b70c0d48a1f5276ed6c93039">DS</a> 
     142, <a class="el" href="classMemDS.html#6279bf18d44343750747ecc12e050f09">MemDS</a> 
     143, <a class="el" href="classDS.html#f4ae51a3bc1267a6a52fc229973afe85">DS</a> 
     144</ul> 
     145<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    84146<a href="http://www.doxygen.org/index.html"> 
    85147<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/functions_rela.html

    r8 r19  
    3434: <a class="el" href="classRV.html#cad6f15535d10437f6690cb4492176a8">RV</a> 
    3535</ul> 
    36 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     36<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    3737<a href="http://www.doxygen.org/index.html"> 
    3838<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/functions_vars.html

    r8 r19  
    3131<p> 
    3232<ul> 
     33<li>Drv 
     34: <a class="el" href="classDS.html#1012025a1a3a1fdd24aa48698a3d3454">DS</a> 
    3335<li>ll 
    3436: <a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">BM</a> 
     
    3941: <a class="el" href="classKalmanFull.html#b75dc059e84fa8ffc076203b30f926cc">KalmanFull</a> 
    4042, <a class="el" href="classKalman.html#188cd5ac1c9e496b1a371eb7c57c97d3">Kalman&lt; sq_T &gt;</a> 
     43<li>Urv 
     44: <a class="el" href="classDS.html#0a88ffaeb3c7c2cf30c69bc41a000629">DS</a> 
    4145</ul> 
    42 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     46<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    4347<a href="http://www.doxygen.org/index.html"> 
    4448<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/hierarchy.html

    r8 r19  
    2020  </ul> 
    2121</div> 
    22 <h1>mixpp Class Hierarchy</h1>This inheritance list is sorted roughly, but not completely, alphabetically:<ul> 
     22<h1>mixpp Class Hierarchy</h1><a href="inherits.html">Go to the graphical class hierarchy</a> 
     23<p> 
     24This inheritance list is sorted roughly, but not completely, alphabetically:<ul> 
    2325<li><a class="el" href="classBM.html">BM</a> 
    2426<ul> 
     
    2931<li><a class="el" href="classTrivialPF.html">TrivialPF</a> 
    3032</ul> 
     33</ul> 
     34<li><a class="el" href="classDS.html">DS</a> 
     35<ul> 
     36<li><a class="el" href="classMemDS.html">MemDS</a> 
    3137</ul> 
    3238<li><a class="el" href="classepdf.html">epdf</a> 
     
    4551</ul> 
    4652</ul> 
    47 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:11 2008 for mixpp by&nbsp; 
     53<hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    4854<a href="http://www.doxygen.org/index.html"> 
    4955<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/index.html

    r8 r19  
    1515<h1>mixpp Documentation</h1> 
    1616<p> 
    17 <h3 align="center">1 </h3><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     17<h3 align="center">1 </h3><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:36 2008 for mixpp by&nbsp; 
    1818<a href="http://www.doxygen.org/index.html"> 
    1919<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/itpp__ext_8h-source.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/itpp_ext.h Source File</title> 
     3<title>mixpp: work/mixpp/bdm/itpp_ext.h Source File</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/itpp_ext.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//</span> 
     15<h1>work/mixpp/bdm/itpp_ext.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//</span> 
    1616<a name="l00002"></a>00002 <span class="comment">// C++ Interface: itpp_ext</span> 
    1717<a name="l00003"></a>00003 <span class="comment">//</span> 
     
    2929<a name="l00015"></a>00015         Array&lt;int&gt; to_Arr(<span class="keyword">const</span> ivec &amp;indices); 
    3030<a name="l00016"></a>00016 } 
    31 </pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     31</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:36 2008 for mixpp by&nbsp; 
    3232<a href="http://www.doxygen.org/index.html"> 
    3333<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libBM_8h-source.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libBM.h Source File</title> 
     3<title>mixpp: work/mixpp/bdm/stat/libBM.h Source File</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libBM.h</h1><a href="libBM_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
     15<h1>work/mixpp/bdm/stat/libBM.h</h1><a href="libBM_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
    1616<a name="l00013"></a>00013 <span class="preprocessor">#ifndef BM_H</span> 
    1717<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define BM_H</span> 
     
    2323<a name="l00020"></a>00020  
    2424<a name="l00026"></a><a class="code" href="classRV.html">00026</a> <span class="keyword">class </span><a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> { 
    25 <a name="l00027"></a>00027         <span class="keywordtype">int</span> len; 
     25<a name="l00027"></a>00027         <span class="keywordtype">int</span> size,len; 
    2626<a name="l00028"></a>00028         ivec ids; 
    2727<a name="l00029"></a>00029         ivec sizes; 
     
    3939<a name="l00045"></a>00045         <span class="keyword">friend</span> std::ostream &amp;<a class="code" href="classRV.html#cad6f15535d10437f6690cb4492176a8" title="Printing output e.g. for debugging.">operator&lt;&lt; </a>( std::ostream &amp;os, <span class="keyword">const</span> <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv ); 
    4040<a name="l00046"></a>00046  
    41 <a name="l00048"></a>00048         <span class="keywordtype">int</span> <a class="code" href="classRV.html#a764092415291a0e6452a3711749d18e" title="Return length (number of scalars) of the RV.">length</a>(); 
    42 <a name="l00050"></a>00050         ivec <a class="code" href="classRV.html#45b869bced40dc3fa0df584aaf8228c0" title="Find indexes of another rv in self.">rvfind</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv2); 
    43 <a name="l00052"></a>00052         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#f47ab0015ebac822da3b2e00f42a8fc6" title="Add (concat) another variable to the current one.">rvadd</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv2); 
    44 <a name="l00054"></a>00054         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#269023ac4d41b21c4e1f7f17db1603b9" title="Subtract another variable from the current one.">rvsubt</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv2); 
    45 <a name="l00056"></a>00056         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#70a53f2bc37929bae899b0b24cda9d8e" title="Select only variables at indeces ind.">rvsubselect</a>(ivec ind); 
    46 <a name="l00058"></a>00058         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#28bbcb8873bafdac317bafb7b481cc45" title="Select only variables at indeces ind.">operator()</a>(ivec ind); 
    47 <a name="l00060"></a>00060         <span class="keywordtype">void</span> <a class="code" href="classRV.html#e0a158d53ab9430627241f844f4c9a60" title="Generate new RV with time shifted by delta.">t</a>(<span class="keywordtype">int</span> delta); 
    48 <a name="l00061"></a>00061 }; 
    49 <a name="l00062"></a>00062  
    50 <a name="l00063"></a>00063  
     41<a name="l00048"></a><a class="code" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04">00048</a>         <span class="keywordtype">int</span> <a class="code" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04" title="Return length (number of scalars) of the RV.">count</a>() {<span class="keywordflow">return</span> size;} 
     42<a name="l00049"></a>00049         <span class="comment">//TODO why not inline and later??</span> 
     43<a name="l00050"></a>00050          
     44<a name="l00052"></a>00052         ivec <a class="code" href="classRV.html#6b078b1086224aca3a9e5a203e647fb6" title="Find indexes of another rv in self.">find</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv2); 
     45<a name="l00054"></a>00054         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <span class="keyword">add</span>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv2); 
     46<a name="l00056"></a>00056         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#4c5ec5e913fc598e242cb930ae8bdf4a" title="Subtract another variable from the current one.">subt</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv2); 
     47<a name="l00058"></a>00058         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#2bf35b18a32aad419f0516273939628e" title="Select only variables at indeces ind.">subselect</a>(ivec ind); 
     48<a name="l00060"></a>00060         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classRV.html#28bbcb8873bafdac317bafb7b481cc45" title="Select only variables at indeces ind.">operator()</a>(ivec ind); 
     49<a name="l00062"></a>00062         <span class="keywordtype">void</span> <a class="code" href="classRV.html#e0a158d53ab9430627241f844f4c9a60" title="Generate new RV with time shifted by delta.">t</a>(<span class="keywordtype">int</span> delta); 
     50<a name="l00063"></a>00063 }; 
    5151<a name="l00064"></a>00064  
    5252<a name="l00065"></a>00065  
    53 <a name="l00067"></a><a class="code" href="classfnc.html">00067</a> <span class="keyword">class </span><a class="code" href="classfnc.html" title="Class representing function of variables.">fnc</a> { 
    54 <a name="l00068"></a>00068         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv; 
    55 <a name="l00069"></a>00069 }; 
    56 <a name="l00070"></a>00070  
    57 <a name="l00072"></a><a class="code" href="classBM.html">00072</a> <span class="keyword">class </span><a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> { 
    58 <a name="l00073"></a>00073 <span class="keyword">public</span>: 
    59 <a name="l00075"></a><a class="code" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">00075</a>         <span class="keywordtype">double</span> <a class="code" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979" title="Logarithm of marginalized data likelihood.">ll</a>; 
    60 <a name="l00076"></a>00076  
    61 <a name="l00081"></a>00081         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0" title="Incremental Bayes rule.">bayes</a> ( <span class="keyword">const</span> vec &amp;dt, <span class="keywordtype">bool</span> evall=<span class="keyword">true</span> ) = 0; 
    62 <a name="l00083"></a>00083         <span class="keywordtype">void</span> <a class="code" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0" title="Incremental Bayes rule.">bayes</a> ( mat Dt ); 
    63 <a name="l00084"></a>00084 }; 
    64 <a name="l00085"></a>00085  
    65 <a name="l00087"></a><a class="code" href="classepdf.html">00087</a> <span class="keyword">class </span><a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> { 
    66 <a name="l00088"></a>00088         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv; 
    67 <a name="l00089"></a>00089 <span class="keyword">public</span>: 
    68 <a name="l00091"></a>00091 <span class="comment">//      virtual vec moment ( const int order = 1 );</span> 
    69 <a name="l00093"></a><a class="code" href="classepdf.html#e6ce993603a95c2645eb86305ea51396">00093</a> <span class="comment"></span>        <span class="keyword">virtual</span> vec <a class="code" href="classepdf.html#e6ce993603a95c2645eb86305ea51396" title="Returns the required moment of the epdf.">sample</a> (){}; 
    70 <a name="l00094"></a>00094         <span class="keyword">virtual</span> <span class="keywordtype">double</span> eval(<span class="keyword">const</span> vec &amp;val){}; 
    71 <a name="l00095"></a>00095 }; 
    72 <a name="l00096"></a>00096  
    73 <a name="l00098"></a><a class="code" href="classmpdf.html">00098</a> <span class="keyword">class </span><a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> { 
    74 <a name="l00100"></a>00100         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv; 
    75 <a name="l00102"></a>00102         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rvc; 
    76 <a name="l00103"></a>00103 <span class="keyword">public</span>: 
    77 <a name="l00104"></a>00104  
    78 <a name="l00106"></a>00106 <span class="comment">//      virtual fnc moment ( const int order = 1 );</span> 
    79 <a name="l00108"></a><a class="code" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41">00108</a> <span class="comment"></span>        <span class="keyword">virtual</span> vec <a class="code" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41" title="Returns the required moment of the epdf.">samplecond</a> (vec &amp;cond, <span class="keywordtype">double</span> lik){}; 
    80 <a name="l00109"></a>00109         <span class="keyword">virtual</span> <span class="keywordtype">void</span> condition (vec &amp;cond){}; 
    81 <a name="l00110"></a>00110 }; 
    82 <a name="l00111"></a>00111  
    83 <a name="l00112"></a>00112 <span class="preprocessor">#endif // BM_H</span> 
    84 </pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     53<a name="l00066"></a>00066  
     54<a name="l00067"></a>00067  
     55<a name="l00069"></a><a class="code" href="classfnc.html">00069</a> <span class="keyword">class </span><a class="code" href="classfnc.html" title="Class representing function of variables.">fnc</a> { 
     56<a name="l00070"></a>00070         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv; 
     57<a name="l00071"></a>00071 }; 
     58<a name="l00072"></a>00072  
     59<a name="l00074"></a><a class="code" href="classBM.html">00074</a> <span class="keyword">class </span><a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> { 
     60<a name="l00075"></a>00075 <span class="keyword">public</span>: 
     61<a name="l00077"></a><a class="code" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">00077</a>         <span class="keywordtype">double</span> <a class="code" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979" title="Logarithm of marginalized data likelihood.">ll</a>; 
     62<a name="l00078"></a>00078  
     63<a name="l00083"></a>00083         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0" title="Incremental Bayes rule.">bayes</a> ( <span class="keyword">const</span> vec &amp;dt, <span class="keywordtype">bool</span> evall=<span class="keyword">true</span> ) = 0; 
     64<a name="l00085"></a>00085         <span class="keywordtype">void</span> <a class="code" href="classBM.html#c52edf4ad6e1dff9bf64b9e1e0cfb1f0" title="Incremental Bayes rule.">bayes</a> ( mat Dt ); 
     65<a name="l00086"></a>00086 }; 
     66<a name="l00087"></a>00087  
     67<a name="l00089"></a><a class="code" href="classepdf.html">00089</a> <span class="keyword">class </span><a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> { 
     68<a name="l00090"></a>00090         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv; 
     69<a name="l00091"></a>00091 <span class="keyword">public</span>: 
     70<a name="l00093"></a>00093 <span class="comment">//      virtual vec moment ( const int order = 1 );</span> 
     71<a name="l00095"></a>00095 <span class="comment"></span>        <span class="keyword">virtual</span> vec <a class="code" href="classepdf.html#7f74d871d50b9ff360f1b3879092a9fa" title="Returns the required moment of the epdf.">sample</a> ()=0; 
     72<a name="l00096"></a>00096         <span class="keyword">virtual</span> <span class="keywordtype">double</span> eval(<span class="keyword">const</span> vec &amp;val){}; 
     73<a name="l00097"></a>00097 }; 
     74<a name="l00098"></a>00098  
     75<a name="l00100"></a><a class="code" href="classmpdf.html">00100</a> <span class="keyword">class </span><a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> { 
     76<a name="l00102"></a>00102         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rv; 
     77<a name="l00104"></a>00104         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> rvc; 
     78<a name="l00105"></a>00105 <span class="keyword">public</span>: 
     79<a name="l00106"></a>00106  
     80<a name="l00108"></a>00108 <span class="comment">//      virtual fnc moment ( const int order = 1 );</span> 
     81<a name="l00110"></a><a class="code" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41">00110</a> <span class="comment"></span>        <span class="keyword">virtual</span> vec <a class="code" href="classmpdf.html#c20c796f8d0a201f0897299150e45a41" title="Returns the required moment of the epdf.">samplecond</a> (vec &amp;cond, <span class="keywordtype">double</span> lik){}; 
     82<a name="l00111"></a>00111         <span class="keyword">virtual</span> <span class="keywordtype">void</span> condition (vec &amp;cond){}; 
     83<a name="l00112"></a>00112 }; 
     84<a name="l00113"></a>00113  
     85<a name="l00120"></a><a class="code" href="classDS.html">00120</a> <span class="keyword">class </span><a class="code" href="classDS.html" title="Abstract class for discrete-time sources of data.">DS</a> { 
     86<a name="l00121"></a>00121 <span class="keyword">protected</span>: 
     87<a name="l00123"></a><a class="code" href="classDS.html#1012025a1a3a1fdd24aa48698a3d3454">00123</a>         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classDS.html#1012025a1a3a1fdd24aa48698a3d3454" title="Observed variables, returned by getdata().">Drv</a>;  
     88<a name="l00125"></a><a class="code" href="classDS.html#0a88ffaeb3c7c2cf30c69bc41a000629">00125</a>         <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classDS.html#0a88ffaeb3c7c2cf30c69bc41a000629" title="Action variables, accepted by write().">Urv</a>; <span class="comment">//</span> 
     89<a name="l00126"></a>00126 <span class="keyword">public</span>: 
     90<a name="l00128"></a>00128         <span class="keywordtype">void</span> <a class="code" href="classDS.html#db2dacc9e71a36eeb9c5c2ee402eeeb1" title="Returns full vector of observed data.">getdata</a>(vec &amp;dt); 
     91<a name="l00130"></a>00130         <span class="keywordtype">void</span> <a class="code" href="classDS.html#db2dacc9e71a36eeb9c5c2ee402eeeb1" title="Returns full vector of observed data.">getdata</a>(vec &amp;dt, ivec &amp;indeces); 
     92<a name="l00132"></a>00132         <span class="keywordtype">void</span> <a class="code" href="classDS.html#0dfb6788b70c0d48a1f5276ed6c93039" title="Accepts action variable and schedule it for application.">write</a>(vec &amp;ut); 
     93<a name="l00134"></a>00134         <span class="keywordtype">void</span> <a class="code" href="classDS.html#0dfb6788b70c0d48a1f5276ed6c93039" title="Accepts action variable and schedule it for application.">write</a>(vec &amp;ut, ivec &amp;indeces); 
     94<a name="l00140"></a>00140         <span class="keywordtype">void</span> <a class="code" href="classDS.html#9a35ca9c9321dce2bf63bf668f785b75" title="Method that assigns random variables to the datasource. Typically, the datasource...">linkrvs</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;drv, <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;urv); 
     95<a name="l00141"></a>00141          
     96<a name="l00143"></a>00143         <span class="keywordtype">void</span> <a class="code" href="classDS.html#470ba89e8e7c3c4d830803221b4e9be6" title="Moves from $t$ to $t+1$, i.e. perfroms the actions and reads response of the system...">step</a>(); 
     97<a name="l00144"></a>00144 }; 
     98<a name="l00145"></a>00145  
     99<a name="l00146"></a>00146  
     100<a name="l00147"></a>00147 <span class="preprocessor">#endif // BM_H</span> 
     101</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:36 2008 for mixpp by&nbsp; 
    85102<a href="http://www.doxygen.org/index.html"> 
    86103<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libBM_8h.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libBM.h File Reference</title> 
     3<title>mixpp: work/mixpp/bdm/stat/libBM.h File Reference</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libBM.h File Reference</h1>Bayesian Models (bm) that use Bayes rule to learn from observations. <a href="#_details">More...</a> 
     15<h1>work/mixpp/bdm/stat/libBM.h File Reference</h1>Bayesian Models (bm) that use Bayes rule to learn from observations. <a href="#_details">More...</a> 
    1616<p> 
    1717<code>#include &lt;itpp/itbase.h&gt;</code><br> 
     18 
     19<p> 
     20<div class="dynheader"> 
     21Include dependency graph for libBM.h:</div> 
     22<div class="dynsection"> 
     23<p><center><img src="libBM_8h__incl.png" border="0" usemap="#work/mixpp/bdm/stat/libBM.h_map" alt=""></center> 
     24<map name="work/mixpp/bdm/stat/libBM.h_map"> 
     25<area shape="rect" title="Bayesian Models (bm) that use Bayes rule to learn from observations." alt="" coords="60,84,159,111"></map> 
     26</div> 
     27 
     28<p> 
     29<div class="dynheader"> 
     30This graph shows which files directly or indirectly include this file:</div> 
     31<div class="dynsection"> 
     32<p><center><img src="libBM_8h__dep__incl.png" border="0" usemap="#work/mixpp/bdm/stat/libBM.hdep_map" alt=""></center> 
     33<map name="work/mixpp/bdm/stat/libBM.hdep_map"> 
     34<area shape="rect" href="libKF_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations." alt="" coords="5,84,219,111"><area shape="rect" href="libPF_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations." alt="" coords="243,84,456,111"><area shape="rect" href="libDS_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations." alt="" coords="480,84,688,111"><area shape="rect" href="libEF_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations." alt="" coords="712,84,915,111"><area shape="rect" href="libFN_8h&#45;source.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations." alt="" coords="939,84,1144,111"></map> 
     35</div> 
    1836 
    1937<p> 
     
    3654 
    3755<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Conditional probability density, e.g. modeling some dependencies.  <a href="classmpdf.html#_details">More...</a><br></td></tr> 
     56<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDS.html">DS</a></td></tr> 
     57 
     58<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Abstract class for discrete-time sources of data.  <a href="classDS.html#_details">More...</a><br></td></tr> 
    3859</table> 
    3960<hr><a name="_details"></a><h2>Detailed Description</h2> 
     
    4263<dl class="author" compact><dt><b>Author:</b></dt><dd>Vaclav Smidl.</dd></dl> 
    4364----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty<p> 
    44 Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     65Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:39 2008 for mixpp by&nbsp; 
    4566<a href="http://www.doxygen.org/index.html"> 
    4667<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libDC_8h-source.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libDC.h Source File</title> 
     3<title>mixpp: work/mixpp/bdm/math/libDC.h Source File</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libDC.h</h1><a href="libDC_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
     15<h1>work/mixpp/bdm/math/libDC.h</h1><a href="libDC_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
    1616<a name="l00013"></a>00013 <span class="preprocessor">#ifndef DC_H</span> 
    1717<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define DC_H</span> 
     
    3232<a name="l00051"></a>00051         <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#5c852819589f74cdaefbd648c0ce8547" title="Logarithm of a determinant.">logdet</a>() =0; 
    3333<a name="l00052"></a>00052  
    34 <a name="l00057"></a>00057         <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be" title="Evaluates quadratic form $x= v&amp;#39;*V*v$;.">qform</a>(vec &amp;v) =0; 
    35 <a name="l00058"></a>00058  
    36 <a name="l00059"></a>00059 <span class="comment">//      //! easy version of the </span> 
    37 <a name="l00060"></a>00060 <span class="comment">//      sqmat inv();</span> 
    38 <a name="l00061"></a>00061  
    39 <a name="l00062"></a>00062         <span class="keyword">friend</span> std::ostream &amp;operator&lt;&lt; ( std::ostream &amp;os, <a class="code" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square-root form...">sqmat</a> &amp;sq ); 
    40 <a name="l00063"></a>00063  
    41 <a name="l00065"></a>00065         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#6fca246f9eabbdeb8cac03030e826b5e" title="Clearing matrix so that it corresponds to zeros.">clear</a>() =0; 
    42 <a name="l00066"></a>00066          
    43 <a name="l00068"></a>00068         <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">cols</a>() =0; 
    44 <a name="l00069"></a>00069  
    45 <a name="l00071"></a>00071         <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7" title="Reimplementing common functions of mat: cols().">rows</a>() =0; 
    46 <a name="l00072"></a>00072  
    47 <a name="l00073"></a>00073 }; 
     34<a name="l00058"></a>00058         <span class="keyword">virtual</span> vec <a class="code" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2" title="Multiplies square root of $V$ by vector $x$.">sqrt_mult</a>(vec &amp;v) =0; 
     35<a name="l00059"></a>00059          
     36<a name="l00064"></a>00064         <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be" title="Evaluates quadratic form $x= v&amp;#39;*V*v$;.">qform</a>(vec &amp;v) =0; 
     37<a name="l00065"></a>00065  
     38<a name="l00066"></a>00066 <span class="comment">//      //! easy version of the </span> 
     39<a name="l00067"></a>00067 <span class="comment">//      sqmat inv();</span> 
     40<a name="l00068"></a>00068  
     41<a name="l00070"></a>00070         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#6fca246f9eabbdeb8cac03030e826b5e" title="Clearing matrix so that it corresponds to zeros.">clear</a>() =0; 
     42<a name="l00071"></a>00071          
     43<a name="l00073"></a>00073         <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">cols</a>() =0; 
    4844<a name="l00074"></a>00074  
    49 <a name="l00075"></a>00075  
    50 <a name="l00080"></a><a class="code" href="classfsqmat.html">00080</a> <span class="keyword">class </span><a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a>: <a class="code" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square-root form...">sqmat</a> { 
    51 <a name="l00081"></a>00081         <span class="keywordtype">void</span> opupdt( <span class="keyword">const</span> vec &amp;v, <span class="keywordtype">double</span> w ); 
    52 <a name="l00082"></a>00082         mat to_mat(); 
    53 <a name="l00083"></a>00083         <span class="keywordtype">void</span> mult_sym( <span class="keyword">const</span> mat &amp;C, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
    54 <a name="l00084"></a>00084    <span class="keywordtype">void</span> mult_sym( <span class="keyword">const</span> mat &amp;C, <a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> &amp;U, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
    55 <a name="l00085"></a>00085         <span class="keywordtype">void</span> inv(<a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> &amp;Inv); 
    56 <a name="l00086"></a>00086         <span class="keywordtype">void</span> clear(); 
    57 <a name="l00087"></a>00087          
    58 <a name="l00089"></a>00089         <a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a>(<span class="keyword">const</span> mat &amp;M); 
    59 <a name="l00090"></a>00090          
    60 <a name="l00096"></a>00096         <span class="keyword">virtual</span> <span class="keywordtype">void</span> inv(<a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a>* Inv); 
    61 <a name="l00097"></a>00097 }; 
    62 <a name="l00098"></a>00098  
    63 <a name="l00099"></a>00099 <span class="keyword">class </span>ldmat: <a class="code" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square-root form...">sqmat</a> { 
    64 <a name="l00100"></a>00100 <span class="keyword">public</span>: 
    65 <a name="l00101"></a>00101  
    66 <a name="l00103"></a>00103         ldmat( <span class="keyword">const</span> mat &amp;L, <span class="keyword">const</span> vec &amp;D ); 
    67 <a name="l00105"></a>00105         ldmat( mat V ); 
    68 <a name="l00106"></a>00106         ldmat (); 
    69 <a name="l00107"></a>00107  
    70 <a name="l00108"></a>00108         <span class="comment">// Reimplementation of compulsory operatios</span> 
    71 <a name="l00109"></a>00109  
    72 <a name="l00110"></a>00110         <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#b223484796661f2dadb5607a86ce0581">opupdt</a>( <span class="keyword">const</span> vec &amp;v, <span class="keywordtype">double</span> w ); 
    73 <a name="l00111"></a>00111         mat <a class="code" href="classsqmat.html#9a5b6fddfeb42339e1dc9b978a2590fc" title="Conversion to full matrix.">to_mat</a>(); 
    74 <a name="l00112"></a>00112    <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#faa3bc90be142adde9cf74f573c70157" title="Inplace symmetric multiplication by a SQUARE matrix $C$, i.e. $V = C*V*C&amp;#39;$.">mult_sym</a>( <span class="keyword">const</span> mat &amp;C, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
    75 <a name="l00113"></a>00113         <span class="keywordtype">void</span> <span class="keyword">add</span> ( <span class="keyword">const</span> ldmat &amp;ld2, <span class="keywordtype">double</span> w=1.0 ); 
    76 <a name="l00114"></a>00114         <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#5c852819589f74cdaefbd648c0ce8547" title="Logarithm of a determinant.">logdet</a>(); 
    77 <a name="l00115"></a>00115         <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be" title="Evaluates quadratic form $x= v&amp;#39;*V*v$;.">qform</a>(vec &amp;v); 
    78 <a name="l00116"></a>00116 <span class="comment">//      sqmat&amp; operator -= ( const sqmat &amp; ld2 );</span> 
    79 <a name="l00117"></a>00117         <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#6fca246f9eabbdeb8cac03030e826b5e" title="Clearing matrix so that it corresponds to zeros.">clear</a>(); 
    80 <a name="l00118"></a>00118         <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">cols</a>(); 
    81 <a name="l00119"></a>00119         <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7" title="Reimplementing common functions of mat: cols().">rows</a>(); 
    82 <a name="l00120"></a>00120  
    83 <a name="l00126"></a>00126         <span class="keyword">virtual</span> <span class="keywordtype">void</span> inv(ldmat &amp;Inv); 
    84 <a name="l00127"></a>00127          
    85 <a name="l00133"></a>00133    <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#faa3bc90be142adde9cf74f573c70157" title="Inplace symmetric multiplication by a SQUARE matrix $C$, i.e. $V = C*V*C&amp;#39;$.">mult_sym</a>( <span class="keyword">const</span> mat &amp;C, ldmat &amp;U, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
    86 <a name="l00134"></a>00134  
    87 <a name="l00135"></a>00135         ldmat&amp; operator += (<span class="keyword">const</span> ldmat &amp;ldA); 
    88 <a name="l00136"></a>00136         ldmat&amp; operator -= (<span class="keyword">const</span> ldmat &amp;ldA); 
    89 <a name="l00137"></a>00137         ldmat&amp; operator *= (<span class="keywordtype">double</span> x); 
    90 <a name="l00138"></a>00138          
    91 <a name="l00139"></a>00139 <span class="keyword">protected</span>: 
    92 <a name="l00140"></a>00140         vec D; 
    93 <a name="l00141"></a>00141         mat L; 
    94 <a name="l00142"></a>00142  
    95 <a name="l00143"></a>00143 }; 
    96 <a name="l00144"></a>00144  
    97 <a name="l00146"></a>00146  
    98 <a name="l00147"></a>00147 <span class="keyword">inline</span> ldmat&amp; ldmat::operator += (<span class="keyword">const</span> ldmat &amp;ldA)  {this-&gt;<span class="keyword">add</span>(ldA);<span class="keywordflow">return</span> *<span class="keyword">this</span>;} 
    99 <a name="l00148"></a>00148 <span class="keyword">inline</span> ldmat&amp; ldmat::operator -= (<span class="keyword">const</span> ldmat &amp;ldA)  {this-&gt;<span class="keyword">add</span>(ldA,-1.0);<span class="keywordflow">return</span> *<span class="keyword">this</span>;} 
    100 <a name="l00149"></a>00149 <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">ldmat::cols</a>(){<span class="keywordflow">return</span> L.cols();} 
    101 <a name="l00150"></a>00150 <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7" title="Reimplementing common functions of mat: cols().">ldmat::rows</a>(){<span class="keywordflow">return</span> L.rows();} 
    102 <a name="l00151"></a>00151  
    103 <a name="l00152"></a>00152 <span class="preprocessor">#endif // DC_H</span> 
    104 </pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     45<a name="l00076"></a>00076         <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7" title="Reimplementing common functions of mat: cols().">rows</a>() =0; 
     46<a name="l00077"></a>00077  
     47<a name="l00078"></a>00078 <span class="keyword">protected</span>: 
     48<a name="l00079"></a>00079         <span class="keywordtype">int</span> dim; 
     49<a name="l00080"></a>00080 }; 
     50<a name="l00081"></a>00081  
     51<a name="l00082"></a>00082  
     52<a name="l00087"></a><a class="code" href="classfsqmat.html">00087</a> <span class="keyword">class </span><a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a>: <a class="code" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square-root form...">sqmat</a> { 
     53<a name="l00088"></a>00088         <span class="keywordtype">void</span> opupdt( <span class="keyword">const</span> vec &amp;v, <span class="keywordtype">double</span> w ); 
     54<a name="l00089"></a>00089         mat to_mat(); 
     55<a name="l00090"></a>00090         <span class="keywordtype">void</span> mult_sym( <span class="keyword">const</span> mat &amp;C, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
     56<a name="l00091"></a>00091    <span class="keywordtype">void</span> mult_sym( <span class="keyword">const</span> mat &amp;C, <a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> &amp;U, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
     57<a name="l00092"></a>00092         <span class="keywordtype">void</span> inv(<a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> &amp;Inv); 
     58<a name="l00093"></a>00093         <span class="keywordtype">void</span> clear(); 
     59<a name="l00094"></a>00094          
     60<a name="l00095"></a>00095          
     61<a name="l00097"></a>00097         <a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a>(<span class="keyword">const</span> mat &amp;M); 
     62<a name="l00098"></a>00098          
     63<a name="l00104"></a>00104         <span class="keyword">virtual</span> <span class="keywordtype">void</span> inv(<a class="code" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a>* Inv); 
     64<a name="l00105"></a>00105          
     65<a name="l00106"></a>00106  
     66<a name="l00107"></a>00107 }; 
     67<a name="l00108"></a>00108  
     68<a name="l00109"></a>00109 <span class="keyword">class </span>ldmat: <a class="code" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square-root form...">sqmat</a> { 
     69<a name="l00110"></a>00110 <span class="keyword">public</span>: 
     70<a name="l00111"></a>00111  
     71<a name="l00113"></a>00113         ldmat( <span class="keyword">const</span> mat &amp;L, <span class="keyword">const</span> vec &amp;D ); 
     72<a name="l00115"></a>00115         ldmat( mat V ); 
     73<a name="l00117"></a>00117         ldmat( vec D0 ); 
     74<a name="l00118"></a>00118         ldmat (); 
     75<a name="l00119"></a>00119  
     76<a name="l00120"></a>00120         <span class="comment">// Reimplementation of compulsory operatios</span> 
     77<a name="l00121"></a>00121  
     78<a name="l00122"></a>00122         <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#b223484796661f2dadb5607a86ce0581">opupdt</a>( <span class="keyword">const</span> vec &amp;v, <span class="keywordtype">double</span> w ); 
     79<a name="l00123"></a>00123         mat <a class="code" href="classsqmat.html#9a5b6fddfeb42339e1dc9b978a2590fc" title="Conversion to full matrix.">to_mat</a>(); 
     80<a name="l00124"></a>00124    <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#faa3bc90be142adde9cf74f573c70157" title="Inplace symmetric multiplication by a SQUARE matrix $C$, i.e. $V = C*V*C&amp;#39;$.">mult_sym</a>( <span class="keyword">const</span> mat &amp;C, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
     81<a name="l00125"></a>00125         <span class="keywordtype">void</span> <span class="keyword">add</span> ( <span class="keyword">const</span> ldmat &amp;ld2, <span class="keywordtype">double</span> w=1.0 ); 
     82<a name="l00126"></a>00126         <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#5c852819589f74cdaefbd648c0ce8547" title="Logarithm of a determinant.">logdet</a>(); 
     83<a name="l00127"></a>00127         <span class="keywordtype">double</span> <a class="code" href="classsqmat.html#44e079468bc8bfccf634dc85b32ba6be" title="Evaluates quadratic form $x= v&amp;#39;*V*v$;.">qform</a>(vec &amp;v); 
     84<a name="l00128"></a>00128 <span class="comment">//      sqmat&amp; operator -= ( const sqmat &amp; ld2 );</span> 
     85<a name="l00129"></a>00129         <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#6fca246f9eabbdeb8cac03030e826b5e" title="Clearing matrix so that it corresponds to zeros.">clear</a>(); 
     86<a name="l00130"></a>00130         <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">cols</a>(); 
     87<a name="l00131"></a>00131         <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7" title="Reimplementing common functions of mat: cols().">rows</a>(); 
     88<a name="l00132"></a>00132         vec <a class="code" href="classsqmat.html#b5236c8a050199e1a9d338b0da1a08d2" title="Multiplies square root of $V$ by vector $x$.">sqrt_mult</a>(vec &amp;v); 
     89<a name="l00133"></a>00133  
     90<a name="l00139"></a>00139         <span class="keyword">virtual</span> <span class="keywordtype">void</span> inv(ldmat &amp;Inv); 
     91<a name="l00140"></a>00140          
     92<a name="l00146"></a>00146    <span class="keywordtype">void</span> <a class="code" href="classsqmat.html#faa3bc90be142adde9cf74f573c70157" title="Inplace symmetric multiplication by a SQUARE matrix $C$, i.e. $V = C*V*C&amp;#39;$.">mult_sym</a>( <span class="keyword">const</span> mat &amp;C, ldmat &amp;U, <span class="keywordtype">bool</span> trans=<span class="keyword">false</span> ); 
     93<a name="l00147"></a>00147  
     94<a name="l00156"></a>00156    <span class="keywordtype">void</span> ldform( mat &amp;A, vec &amp;D0 ); 
     95<a name="l00157"></a>00157  
     96<a name="l00158"></a>00158         ldmat&amp; operator += (<span class="keyword">const</span> ldmat &amp;ldA); 
     97<a name="l00159"></a>00159         ldmat&amp; operator -= (<span class="keyword">const</span> ldmat &amp;ldA); 
     98<a name="l00160"></a>00160         ldmat&amp; operator *= (<span class="keywordtype">double</span> x); 
     99<a name="l00161"></a>00161          
     100<a name="l00162"></a>00162         <span class="keyword">friend</span> std::ostream &amp;operator&lt;&lt; ( std::ostream &amp;os, ldmat &amp;sq ); 
     101<a name="l00163"></a>00163  
     102<a name="l00164"></a>00164 <span class="keyword">protected</span>: 
     103<a name="l00165"></a>00165         vec D; 
     104<a name="l00166"></a>00166         mat L; 
     105<a name="l00167"></a>00167  
     106<a name="l00168"></a>00168 }; 
     107<a name="l00169"></a>00169  
     108<a name="l00171"></a>00171  
     109<a name="l00172"></a>00172 <span class="keyword">inline</span> ldmat&amp; ldmat::operator += (<span class="keyword">const</span> ldmat &amp;ldA)  {this-&gt;<span class="keyword">add</span>(ldA);<span class="keywordflow">return</span> *<span class="keyword">this</span>;} 
     110<a name="l00173"></a>00173 <span class="keyword">inline</span> ldmat&amp; ldmat::operator -= (<span class="keyword">const</span> ldmat &amp;ldA)  {this-&gt;<span class="keyword">add</span>(ldA,-1.0);<span class="keywordflow">return</span> *<span class="keyword">this</span>;} 
     111<a name="l00174"></a>00174 <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#743d3799d9e73403230c54e14ecf09ed" title="Reimplementing common functions of mat: cols().">ldmat::cols</a>(){<span class="keywordflow">return</span> dim;} 
     112<a name="l00175"></a>00175 <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="classsqmat.html#f59664a4be09450f8c6ce3f5e5ab2dc7" title="Reimplementing common functions of mat: cols().">ldmat::rows</a>(){<span class="keywordflow">return</span> dim;} 
     113<a name="l00176"></a>00176  
     114<a name="l00177"></a>00177 <span class="preprocessor">#endif // DC_H</span> 
     115</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:36 2008 for mixpp by&nbsp; 
    105116<a href="http://www.doxygen.org/index.html"> 
    106117<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libDC_8h.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libDC.h File Reference</title> 
     3<title>mixpp: work/mixpp/bdm/math/libDC.h File Reference</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libDC.h File Reference</h1>Matrices in decomposed forms (LDL', LU, UDU', etc). <a href="#_details">More...</a> 
     15<h1>work/mixpp/bdm/math/libDC.h File Reference</h1>Matrices in decomposed forms (LDL', LU, UDU', etc). <a href="#_details">More...</a> 
    1616<p> 
    1717<code>#include &lt;itpp/itbase.h&gt;</code><br> 
     18 
     19<p> 
     20<div class="dynheader"> 
     21Include dependency graph for libDC.h:</div> 
     22<div class="dynsection"> 
     23<p><center><img src="libDC_8h__incl.png" border="0" usemap="#work/mixpp/bdm/math/libDC.h_map" alt=""></center> 
     24<map name="work/mixpp/bdm/math/libDC.h_map"> 
     25<area shape="rect" title="Matrices in decomposed forms (LDL&#39;, LU, UDU&#39;, etc)." alt="" coords="65,84,164,111"></map> 
     26</div> 
     27 
     28<p> 
     29<div class="dynheader"> 
     30This graph shows which files directly or indirectly include this file:</div> 
     31<div class="dynsection"> 
     32<p><center><img src="libDC_8h__dep__incl.png" border="0" usemap="#work/mixpp/bdm/math/libDC.hdep_map" alt=""></center> 
     33<map name="work/mixpp/bdm/math/libDC.hdep_map"> 
     34<area shape="rect" href="libKF_8h.html" title="Matrices in decomposed forms (LDL&#39;, LU, UDU&#39;, etc)." alt="" coords="5,84,219,111"><area shape="rect" href="libPF_8h.html" title="Matrices in decomposed forms (LDL&#39;, LU, UDU&#39;, etc)." alt="" coords="243,84,456,111"><area shape="rect" href="libEF_8h.html" title="Matrices in decomposed forms (LDL&#39;, LU, UDU&#39;, etc)." alt="" coords="480,84,683,111"></map> 
     35</div> 
    1836 
    1937<p> 
     
    3553<dl class="author" compact><dt><b>Author:</b></dt><dd>Vaclav Smidl.</dd></dl> 
    3654----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty<p> 
    37 Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     55Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:38 2008 for mixpp by&nbsp; 
    3856<a href="http://www.doxygen.org/index.html"> 
    3957<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libEF_8h-source.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libEF.h Source File</title> 
     3<title>mixpp: work/mixpp/bdm/stat/libEF.h Source File</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libEF.h</h1><a href="libEF_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
     15<h1>work/mixpp/bdm/stat/libEF.h</h1><a href="libEF_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
    1616<a name="l00013"></a>00013 <span class="preprocessor">#ifndef EF_H</span> 
    1717<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define EF_H</span> 
    1818<a name="l00015"></a>00015 <span class="preprocessor"></span> 
    1919<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;itpp/itbase.h&gt;</span> 
    20 <a name="l00017"></a>00017 <span class="comment">//#include &lt;std&gt;</span> 
    21 <a name="l00018"></a>00018  
    22 <a name="l00019"></a>00019 <span class="keyword">using namespace </span>itpp; 
     20<a name="l00017"></a>00017 <span class="preprocessor">#include "../math/libDC.h"</span> 
     21<a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="libBM_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations.">libBM.h</a>"</span> 
     22<a name="l00019"></a>00019 <span class="comment">//#include &lt;std&gt;</span> 
    2323<a name="l00020"></a>00020  
    24 <a name="l00026"></a><a class="code" href="classeEF.html">00026</a> <span class="keyword">class </span><a class="code" href="classeEF.html" title="General conjugate exponential family posterior density.">eEF</a> :<span class="keyword">public</span> <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> { 
    25 <a name="l00027"></a>00027  
    26 <a name="l00028"></a>00028 <span class="keyword">public</span>: 
    27 <a name="l00029"></a>00029         <span class="keyword">virtual</span> <span class="keywordtype">void</span> tupdate( <span class="keywordtype">double</span> phi, mat &amp;vbar, <span class="keywordtype">double</span> nubar ){}; 
    28 <a name="l00030"></a>00030         <span class="keyword">virtual</span> <span class="keywordtype">void</span> dupdate( mat &amp;v,<span class="keywordtype">double</span> nu=1.0 ){}; 
    29 <a name="l00031"></a>00031 }; 
    30 <a name="l00032"></a>00032  
    31 <a name="l00033"></a>00033 <span class="keyword">class </span>mEF :<span class="keyword">public</span> <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> { 
     24<a name="l00021"></a>00021 <span class="keyword">using namespace </span>itpp; 
     25<a name="l00022"></a>00022  
     26<a name="l00028"></a><a class="code" href="classeEF.html">00028</a> <span class="keyword">class </span><a class="code" href="classeEF.html" title="General conjugate exponential family posterior density.">eEF</a> : <span class="keyword">public</span> <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> { 
     27<a name="l00029"></a>00029  
     28<a name="l00030"></a>00030 <span class="keyword">public</span>: 
     29<a name="l00031"></a>00031         <span class="keyword">virtual</span> <span class="keywordtype">void</span> tupdate( <span class="keywordtype">double</span> phi, mat &amp;vbar, <span class="keywordtype">double</span> nubar ) {}; 
     30<a name="l00032"></a>00032         <span class="keyword">virtual</span> <span class="keywordtype">void</span> dupdate( mat &amp;v,<span class="keywordtype">double</span> nu=1.0 ) {}; 
     31<a name="l00033"></a>00033 }; 
    3232<a name="l00034"></a>00034  
    33 <a name="l00035"></a>00035 <span class="keyword">public</span>: 
     33<a name="l00035"></a>00035 <span class="keyword">class </span>mEF : <span class="keyword">public</span> <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> { 
    3434<a name="l00036"></a>00036  
    35 <a name="l00037"></a>00037 }; 
     35<a name="l00037"></a>00037 <span class="keyword">public</span>: 
    3636<a name="l00038"></a>00038  
    37 <a name="l00044"></a>00044 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    38 <a name="l00045"></a><a class="code" href="classenorm.html">00045</a> <span class="keyword">class </span><a class="code" href="classenorm.html" title="General exponential family density.">enorm</a> : <span class="keyword">public</span> <a class="code" href="classeEF.html" title="General conjugate exponential family posterior density.">eEF</a> { 
    39 <a name="l00046"></a>00046         vec mu; 
    40 <a name="l00047"></a>00047         sq_T R; 
    41 <a name="l00048"></a>00048 <span class="keyword">public</span>: 
    42 <a name="l00049"></a>00049         <a class="code" href="classenorm.html" title="General exponential family density.">enorm</a>( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv, vec &amp;mu, sq_T &amp;R ); 
    43 <a name="l00050"></a>00050         <a class="code" href="classenorm.html" title="General exponential family density.">enorm</a>(); 
    44 <a name="l00051"></a>00051         <span class="keywordtype">void</span> tupdate( <span class="keywordtype">double</span> phi, mat &amp;vbar, <span class="keywordtype">double</span> nubar ); 
    45 <a name="l00052"></a>00052         <span class="keywordtype">void</span> dupdate( mat &amp;v,<span class="keywordtype">double</span> nu=1.0 ); 
    46 <a name="l00053"></a>00053         vec <a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023" title="Returns the required moment of the epdf.">sample</a>(); 
    47 <a name="l00054"></a>00054         <span class="keywordtype">double</span> eval( <span class="keyword">const</span> vec &amp;val ); 
    48 <a name="l00055"></a>00055  
    49 <a name="l00056"></a>00056 }; 
    50 <a name="l00057"></a>00057  
    51 <a name="l00061"></a>00061 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    52 <a name="l00062"></a>00062 <span class="keyword">class </span>mlnorm : <span class="keyword">public</span> mEF { 
    53 <a name="l00063"></a>00063         <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;</a> <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>; 
    54 <a name="l00064"></a>00064         mat A; 
    55 <a name="l00065"></a>00065 <span class="keyword">public</span>: 
    56 <a name="l00067"></a>00067         mlnorm( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv,<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rvc, mat &amp;A, sq_T &amp;R ); 
    57 <a name="l00069"></a>00069         vec samplecond( vec &amp;cond, <span class="keywordtype">double</span> &amp;lik ); 
    58 <a name="l00070"></a>00070         mat samplecond( vec &amp;cond, vec &amp;lik, <span class="keywordtype">int</span> n ); 
    59 <a name="l00071"></a>00071         <span class="keywordtype">void</span> condition( vec &amp;cond ); 
    60 <a name="l00072"></a>00072 }; 
    61 <a name="l00073"></a>00073  
    62 <a name="l00075"></a>00075  
    63 <a name="l00076"></a>00076 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    64 <a name="l00077"></a>00077 <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::enorm</a>( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv, vec &amp;mu0, sq_T &amp;R0 ) { 
    65 <a name="l00078"></a>00078         mu = mu0; 
    66 <a name="l00079"></a>00079         R = R0; 
    67 <a name="l00080"></a>00080 }; 
    68 <a name="l00081"></a>00081  
    69 <a name="l00082"></a>00082 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    70 <a name="l00083"></a>00083 <span class="keywordtype">void</span> <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::dupdate</a>( mat &amp;v, <span class="keywordtype">double</span> nu ) { 
    71 <a name="l00084"></a>00084         <span class="comment">//</span> 
     37<a name="l00039"></a>00039 }; 
     38<a name="l00040"></a>00040  
     39<a name="l00046"></a>00046 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     40<a name="l00047"></a><a class="code" href="classenorm.html">00047</a> <span class="keyword">class </span><a class="code" href="classenorm.html" title="General exponential family density.">enorm</a> : <span class="keyword">public</span> <a class="code" href="classeEF.html" title="General conjugate exponential family posterior density.">eEF</a> { 
     41<a name="l00048"></a>00048         <span class="keywordtype">int</span> dim; 
     42<a name="l00049"></a>00049         vec mu; 
     43<a name="l00050"></a>00050         sq_T R; 
     44<a name="l00051"></a>00051 <span class="keyword">public</span>: 
     45<a name="l00052"></a>00052         <a class="code" href="classenorm.html" title="General exponential family density.">enorm</a>( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv, vec &amp;mu, sq_T &amp;R ); 
     46<a name="l00053"></a>00053         <a class="code" href="classenorm.html" title="General exponential family density.">enorm</a>(); 
     47<a name="l00054"></a>00054         <span class="keywordtype">void</span> tupdate( <span class="keywordtype">double</span> phi, mat &amp;vbar, <span class="keywordtype">double</span> nubar ); 
     48<a name="l00055"></a>00055         <span class="keywordtype">void</span> dupdate( mat &amp;v,<span class="keywordtype">double</span> nu=1.0 ); 
     49<a name="l00056"></a>00056         vec <a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023" title="Returns the required moment of the epdf.">sample</a>(); 
     50<a name="l00057"></a>00057         mat <a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023" title="Returns the required moment of the epdf.">sample</a>(<span class="keywordtype">int</span> N); 
     51<a name="l00058"></a>00058         <span class="keywordtype">double</span> eval( <span class="keyword">const</span> vec &amp;val ); 
     52<a name="l00059"></a>00059         Normal_RNG RNG; 
     53<a name="l00060"></a>00060 }; 
     54<a name="l00061"></a>00061  
     55<a name="l00065"></a>00065 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     56<a name="l00066"></a>00066 <span class="keyword">class </span>mlnorm : <span class="keyword">public</span> mEF { 
     57<a name="l00067"></a>00067         <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;</a> <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>; 
     58<a name="l00068"></a>00068         mat A; 
     59<a name="l00069"></a>00069 <span class="keyword">public</span>: 
     60<a name="l00071"></a>00071         mlnorm( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv,<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rvc, mat &amp;A, sq_T &amp;R ); 
     61<a name="l00073"></a>00073         vec samplecond( vec &amp;cond, <span class="keywordtype">double</span> &amp;lik ); 
     62<a name="l00074"></a>00074         mat samplecond( vec &amp;cond, vec &amp;lik, <span class="keywordtype">int</span> n ); 
     63<a name="l00075"></a>00075         <span class="keywordtype">void</span> condition( vec &amp;cond ); 
     64<a name="l00076"></a>00076 }; 
     65<a name="l00077"></a>00077  
     66<a name="l00079"></a>00079  
     67<a name="l00080"></a>00080 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     68<a name="l00081"></a>00081 <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::enorm</a>( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv, vec &amp;mu0, sq_T &amp;R0 ) { 
     69<a name="l00082"></a>00082         dim = rv.<a class="code" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04" title="Return length (number of scalars) of the RV.">count</a>(); 
     70<a name="l00083"></a>00083         mu = mu0; 
     71<a name="l00084"></a>00084         R = R0; 
    7272<a name="l00085"></a>00085 }; 
    7373<a name="l00086"></a>00086  
    7474<a name="l00087"></a>00087 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    75 <a name="l00088"></a>00088 <span class="keywordtype">void</span> <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::tupdate</a>( <span class="keywordtype">double</span> phi, mat &amp;vbar, <span class="keywordtype">double</span> nubar ) { 
     75<a name="l00088"></a>00088 <span class="keywordtype">void</span> <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::dupdate</a>( mat &amp;v, <span class="keywordtype">double</span> nu ) { 
    7676<a name="l00089"></a>00089         <span class="comment">//</span> 
    7777<a name="l00090"></a>00090 }; 
    7878<a name="l00091"></a>00091  
    7979<a name="l00092"></a>00092 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    80 <a name="l00093"></a><a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">00093</a> vec <a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023" title="Returns the required moment of the epdf.">enorm&lt;sq_T&gt;::sample</a>() { 
     80<a name="l00093"></a>00093 <span class="keywordtype">void</span> <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::tupdate</a>( <span class="keywordtype">double</span> phi, mat &amp;vbar, <span class="keywordtype">double</span> nubar ) { 
    8181<a name="l00094"></a>00094         <span class="comment">//</span> 
    8282<a name="l00095"></a>00095 }; 
    8383<a name="l00096"></a>00096  
    8484<a name="l00097"></a>00097 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    85 <a name="l00098"></a>00098 <span class="keywordtype">double</span> <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::eval</a>( <span class="keyword">const</span> vec &amp;val ) { 
    86 <a name="l00099"></a>00099         <span class="comment">//</span> 
    87 <a name="l00100"></a>00100 }; 
    88 <a name="l00101"></a>00101  
     85<a name="l00098"></a><a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023">00098</a> vec <a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023" title="Returns the required moment of the epdf.">enorm&lt;sq_T&gt;::sample</a>() { 
     86<a name="l00099"></a>00099         vec x( dim ); 
     87<a name="l00100"></a>00100         RNG.sample_vector( dim,x ); 
     88<a name="l00101"></a>00101         vec smp = R.sqrt_mult( x ); 
    8989<a name="l00102"></a>00102  
    90 <a name="l00103"></a>00103 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    91 <a name="l00104"></a>00104 <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::enorm</a>() {}; 
    92 <a name="l00105"></a>00105  
    93 <a name="l00106"></a>00106 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    94 <a name="l00107"></a>00107 mlnorm&lt;sq_T&gt;::mlnorm( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv,<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rvc, mat &amp;A, sq_T &amp;R ) { 
    95 <a name="l00108"></a>00108         <span class="keywordtype">int</span> dim = rv.<a class="code" href="classRV.html#a764092415291a0e6452a3711749d18e" title="Return length (number of scalars) of the RV.">length</a>(); 
    96 <a name="l00109"></a>00109         vec mu( dim ); 
    97 <a name="l00110"></a>00110  
    98 <a name="l00111"></a>00111         <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> = <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;</a>( rv,mu,R ); 
    99 <a name="l00112"></a>00112 } 
    100 <a name="l00113"></a>00113  
    101 <a name="l00114"></a>00114 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    102 <a name="l00115"></a>00115 vec mlnorm&lt;sq_T&gt;::samplecond( vec &amp;cond, <span class="keywordtype">double</span> &amp;lik ) { 
    103 <a name="l00116"></a>00116         this-&gt;condition( cond ); 
    104 <a name="l00117"></a>00117         vec smp = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.sample(); 
    105 <a name="l00118"></a>00118         lik = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.eval(smp); 
    106 <a name="l00119"></a>00119         <span class="keywordflow">return</span> smp; 
    107 <a name="l00120"></a>00120 } 
     90<a name="l00103"></a>00103         smp += mu; 
     91<a name="l00104"></a>00104         <span class="keywordflow">return</span> smp; 
     92<a name="l00105"></a>00105 }; 
     93<a name="l00106"></a>00106  
     94<a name="l00107"></a>00107 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     95<a name="l00108"></a>00108 mat <a class="code" href="classenorm.html#6020bcd89db2c9584bd8871001bd2023" title="Returns the required moment of the epdf.">enorm&lt;sq_T&gt;::sample</a>( <span class="keywordtype">int</span> N ) { 
     96<a name="l00109"></a>00109         mat X( dim,N ); 
     97<a name="l00110"></a>00110         vec x( dim ); 
     98<a name="l00111"></a>00111         vec pom; 
     99<a name="l00112"></a>00112         <span class="keywordtype">int</span> i; 
     100<a name="l00113"></a>00113         <span class="keywordflow">for</span> ( i=0;i&lt;N;i++ ) { 
     101<a name="l00114"></a>00114                 RNG.sample_vector( dim,x ); 
     102<a name="l00115"></a>00115                 pom = R.sqrt_mult( x ); 
     103<a name="l00116"></a>00116                 pom +=mu; 
     104<a name="l00117"></a>00117                 X.set_col( i, pom); 
     105<a name="l00118"></a>00118         } 
     106<a name="l00119"></a>00119         <span class="keywordflow">return</span> X; 
     107<a name="l00120"></a>00120 }; 
    108108<a name="l00121"></a>00121  
    109109<a name="l00122"></a>00122 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    110 <a name="l00123"></a>00123 mat mlnorm&lt;sq_T&gt;::samplecond( vec &amp;cond, vec &amp;lik, <span class="keywordtype">int</span> n ) { 
    111 <a name="l00124"></a>00124         <span class="keywordtype">int</span> i; 
    112 <a name="l00125"></a>00125         <span class="keywordtype">int</span> dim = rv.<a class="code" href="classRV.html#a764092415291a0e6452a3711749d18e" title="Return length (number of scalars) of the RV.">length</a>(); 
    113 <a name="l00126"></a>00126         mat Smp( dim,n ); 
    114 <a name="l00127"></a>00127         vec smp( dim); 
    115 <a name="l00128"></a>00128         this-&gt;condition( cond ); 
    116 <a name="l00129"></a>00129         <span class="keywordflow">for</span> ( i=0; i&lt;dim; i++ ) { 
    117 <a name="l00130"></a>00130                 smp = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.sample(); 
    118 <a name="l00131"></a>00131                 lik(i) = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.eval(smp); 
    119 <a name="l00132"></a>00132                 Smp.set_col( i ,smp); 
    120 <a name="l00133"></a>00133         } 
    121 <a name="l00134"></a>00134         <span class="keywordflow">return</span> Smp; 
    122 <a name="l00135"></a>00135 } 
    123 <a name="l00136"></a>00136  
    124 <a name="l00137"></a>00137 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
    125 <a name="l00138"></a>00138 <span class="keywordtype">void</span> mlnorm&lt;sq_T&gt;::condition( vec &amp;cond) { 
    126 <a name="l00139"></a>00139 } 
    127 <a name="l00140"></a>00140  
    128 <a name="l00141"></a>00141 <span class="preprocessor">#endif //EF_H</span> 
    129 </pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     110<a name="l00123"></a>00123 <span class="keywordtype">double</span> <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::eval</a>( <span class="keyword">const</span> vec &amp;val ) { 
     111<a name="l00124"></a>00124         <span class="comment">//</span> 
     112<a name="l00125"></a>00125 }; 
     113<a name="l00126"></a>00126  
     114<a name="l00127"></a>00127  
     115<a name="l00128"></a>00128 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     116<a name="l00129"></a>00129 <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;::enorm</a>() {}; 
     117<a name="l00130"></a>00130  
     118<a name="l00131"></a>00131 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     119<a name="l00132"></a>00132 mlnorm&lt;sq_T&gt;::mlnorm( <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rv,<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &amp;rvc, mat &amp;A, sq_T &amp;R ) { 
     120<a name="l00133"></a>00133         <span class="keywordtype">int</span> dim = rv.<a class="code" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04" title="Return length (number of scalars) of the RV.">count</a>(); 
     121<a name="l00134"></a>00134         vec mu( dim ); 
     122<a name="l00135"></a>00135  
     123<a name="l00136"></a>00136         <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> = <a class="code" href="classenorm.html" title="General exponential family density.">enorm&lt;sq_T&gt;</a>( rv,mu,R ); 
     124<a name="l00137"></a>00137 } 
     125<a name="l00138"></a>00138  
     126<a name="l00139"></a>00139 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     127<a name="l00140"></a>00140 vec mlnorm&lt;sq_T&gt;::samplecond( vec &amp;cond, <span class="keywordtype">double</span> &amp;lik ) { 
     128<a name="l00141"></a>00141         this-&gt;condition( cond ); 
     129<a name="l00142"></a>00142         vec smp = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.sample(); 
     130<a name="l00143"></a>00143         lik = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.eval( smp ); 
     131<a name="l00144"></a>00144         <span class="keywordflow">return</span> smp; 
     132<a name="l00145"></a>00145 } 
     133<a name="l00146"></a>00146  
     134<a name="l00147"></a>00147 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     135<a name="l00148"></a>00148 mat mlnorm&lt;sq_T&gt;::samplecond( vec &amp;cond, vec &amp;lik, <span class="keywordtype">int</span> n ) { 
     136<a name="l00149"></a>00149         <span class="keywordtype">int</span> i; 
     137<a name="l00150"></a>00150         <span class="keywordtype">int</span> dim = rv.<a class="code" href="classRV.html#9dcaca7b87cfb0e24a19260067d62f04" title="Return length (number of scalars) of the RV.">count</a>(); 
     138<a name="l00151"></a>00151         mat Smp( dim,n ); 
     139<a name="l00152"></a>00152         vec smp( dim ); 
     140<a name="l00153"></a>00153         this-&gt;condition( cond ); 
     141<a name="l00154"></a>00154         <span class="keywordflow">for</span> ( i=0; i&lt;dim; i++ ) { 
     142<a name="l00155"></a>00155                 smp = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.sample(); 
     143<a name="l00156"></a>00156                 lik( i ) = <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.eval( smp ); 
     144<a name="l00157"></a>00157                 Smp.set_col( i ,smp ); 
     145<a name="l00158"></a>00158         } 
     146<a name="l00159"></a>00159         <span class="keywordflow">return</span> Smp; 
     147<a name="l00160"></a>00160 } 
     148<a name="l00161"></a>00161  
     149<a name="l00162"></a>00162 <span class="keyword">template</span>&lt;<span class="keyword">class</span> sq_T&gt; 
     150<a name="l00163"></a>00163 <span class="keywordtype">void</span> mlnorm&lt;sq_T&gt;::condition( vec &amp;cond ) { 
     151<a name="l00164"></a>00164         <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>.mu = A*cond; 
     152<a name="l00165"></a>00165 <span class="comment">//R is already assigned;</span> 
     153<a name="l00166"></a>00166 } 
     154<a name="l00167"></a>00167  
     155<a name="l00168"></a>00168 <span class="preprocessor">#endif //EF_H</span> 
     156</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:37 2008 for mixpp by&nbsp; 
    130157<a href="http://www.doxygen.org/index.html"> 
    131158<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libEF_8h.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libEF.h File Reference</title> 
     3<title>mixpp: work/mixpp/bdm/stat/libEF.h File Reference</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libEF.h File Reference</h1>Probability distributions for Exponential Family models. <a href="#_details">More...</a> 
     15<h1>work/mixpp/bdm/stat/libEF.h File Reference</h1>Probability distributions for Exponential Family models. <a href="#_details">More...</a> 
    1616<p> 
    1717<code>#include &lt;itpp/itbase.h&gt;</code><br> 
     18<code>#include &quot;<a class="el" href="libDC_8h-source.html">../math/libDC.h</a>&quot;</code><br> 
     19<code>#include &quot;<a class="el" href="libBM_8h-source.html">libBM.h</a>&quot;</code><br> 
     20 
     21<p> 
     22<div class="dynheader"> 
     23Include dependency graph for libEF.h:</div> 
     24<div class="dynsection"> 
     25<p><center><img src="libEF_8h__incl.png" border="0" usemap="#work/mixpp/bdm/stat/libEF.h_map" alt=""></center> 
     26<map name="work/mixpp/bdm/stat/libEF.h_map"> 
     27<area shape="rect" title="Probability distributions for Exponential Family models." alt="" coords="57,161,156,188"><area shape="rect" href="libDC_8h.html" title="Probability distributions for Exponential Family models." alt="" coords="48,84,165,111"><area shape="rect" href="libBM_8h.html" title="Probability distributions for Exponential Family models." alt="" coords="189,84,256,111"></map> 
     28</div> 
    1829 
    1930<p> 
     
    3748<dl class="author" compact><dt><b>Author:</b></dt><dd>Vaclav Smidl.</dd></dl> 
    3849----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty<p> 
    39 Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     50Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:40 2008 for mixpp by&nbsp; 
    4051<a href="http://www.doxygen.org/index.html"> 
    4152<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libKF_8h-source.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libKF.h Source File</title> 
     3<title>mixpp: work/mixpp/bdm/estim/libKF.h Source File</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libKF.h</h1><a href="libKF_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
     15<h1>work/mixpp/bdm/estim/libKF.h</h1><a href="libKF_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
    1616<a name="l00013"></a>00013 <span class="preprocessor">#ifndef KF_H</span> 
    1717<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define KF_H</span> 
    1818<a name="l00015"></a>00015 <span class="preprocessor"></span> 
    1919<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;itpp/itbase.h&gt;</span> 
    20 <a name="l00017"></a>00017 <span class="preprocessor">#include "<a class="code" href="libBM_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations.">libBM.h</a>"</span> 
    21 <a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="libDC_8h.html" title="Matrices in decomposed forms (LDL&amp;#39;, LU, UDU&amp;#39;, etc).">libDC.h</a>"</span> 
     20<a name="l00017"></a>00017 <span class="preprocessor">#include "../stat/libBM.h"</span> 
     21<a name="l00018"></a>00018 <span class="preprocessor">#include "../math/libDC.h"</span> 
    2222<a name="l00019"></a>00019  
    2323<a name="l00020"></a>00020  
     
    132132<a name="l00144"></a>00144 <span class="preprocessor"></span> 
    133133<a name="l00145"></a>00145  
    134 </pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     134</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:36 2008 for mixpp by&nbsp; 
    135135<a href="http://www.doxygen.org/index.html"> 
    136136<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libKF_8h.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libKF.h File Reference</title> 
     3<title>mixpp: work/mixpp/bdm/estim/libKF.h File Reference</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libKF.h File Reference</h1>Bayesian Filtering for linear Gaussian models (<a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> Filter) and extensions. <a href="#_details">More...</a> 
     15<h1>work/mixpp/bdm/estim/libKF.h File Reference</h1>Bayesian Filtering for linear Gaussian models (<a class="el" href="classKalman.html" title="Kalman filter with covaraince matrices in square root form.">Kalman</a> Filter) and extensions. <a href="#_details">More...</a> 
    1616<p> 
    1717<code>#include &lt;itpp/itbase.h&gt;</code><br> 
    18 <code>#include &quot;<a class="el" href="libBM_8h-source.html">libBM.h</a>&quot;</code><br> 
    19 <code>#include &quot;<a class="el" href="libDC_8h-source.html">libDC.h</a>&quot;</code><br> 
     18<code>#include &quot;<a class="el" href="libBM_8h-source.html">../stat/libBM.h</a>&quot;</code><br> 
     19<code>#include &quot;<a class="el" href="libDC_8h-source.html">../math/libDC.h</a>&quot;</code><br> 
     20 
     21<p> 
     22<div class="dynheader"> 
     23Include dependency graph for libKF.h:</div> 
     24<div class="dynsection"> 
     25<p><center><img src="libKF_8h__incl.png" border="0" usemap="#work/mixpp/bdm/estim/libKF.h_map" alt=""></center> 
     26<map name="work/mixpp/bdm/estim/libKF.h_map"> 
     27<area shape="rect" title="Bayesian Filtering for linear Gaussian models (Kalman Filter) and extensions." alt="" coords="63,161,161,188"><area shape="rect" href="libBM_8h.html" title="Bayesian Filtering for linear Gaussian models (Kalman Filter) and extensions." alt="" coords="57,84,167,111"><area shape="rect" href="libDC_8h.html" title="Bayesian Filtering for linear Gaussian models (Kalman Filter) and extensions." alt="" coords="191,84,308,111"></map> 
     28</div> 
    2029 
    2130<p> 
     
    3544<dl class="author" compact><dt><b>Author:</b></dt><dd>Vaclav Smidl.</dd></dl> 
    3645----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty<p> 
    37 Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     46Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:37 2008 for mixpp by&nbsp; 
    3847<a href="http://www.doxygen.org/index.html"> 
    3948<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libPF_8h-source.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libPF.h Source File</title> 
     3<title>mixpp: work/mixpp/bdm/estim/libPF.h Source File</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libPF.h</h1><a href="libPF_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
     15<h1>work/mixpp/bdm/estim/libPF.h</h1><a href="libPF_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001  
    1616<a name="l00013"></a>00013 <span class="preprocessor">#ifndef PF_H</span> 
    1717<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define PF_H</span> 
    1818<a name="l00015"></a>00015 <span class="preprocessor"></span> 
    1919<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;itpp/itbase.h&gt;</span> 
    20 <a name="l00017"></a>00017 <span class="preprocessor">#include "<a class="code" href="libBM_8h.html" title="Bayesian Models (bm) that use Bayes rule to learn from observations.">libBM.h</a>"</span> 
    21 <a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="libDC_8h.html" title="Matrices in decomposed forms (LDL&amp;#39;, LU, UDU&amp;#39;, etc).">libDC.h</a>"</span> 
     20<a name="l00017"></a>00017 <span class="preprocessor">#include "../stat/libBM.h"</span> 
     21<a name="l00018"></a>00018 <span class="preprocessor">#include "../math/libDC.h"</span> 
    2222<a name="l00019"></a>00019  
    2323<a name="l00020"></a>00020 <span class="keyword">using namespace </span>itpp; 
    2424<a name="l00021"></a>00021  
    25 <a name="l00022"></a>00022 <span class="keyword">enum</span> RESAMPLING_METHOD { MULTINOMIAL = 0, DETERMINISTIC = 1, RESIDUAL = 2, SYSTEMATIC = 3 }; 
     25<a name="l00022"></a>00022 <span class="keyword">enum</span> RESAMPLING_METHOD { MULTINOMIAL = 0, STRATIFIED = 1, SYSTEMATIC = 3 }; 
    2626<a name="l00023"></a>00023  
    2727<a name="l00029"></a><a class="code" href="classPF.html">00029</a> <span class="keyword">class </span><a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> : <span class="keyword">public</span> <a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> {  
     
    2929<a name="l00031"></a>00031         <span class="keywordtype">int</span> n; <span class="comment">//number of particles</span> 
    3030<a name="l00032"></a>00032         vec w; <span class="comment">//particle weights</span> 
    31 <a name="l00033"></a>00033          
    32 <a name="l00034"></a>00034 <span class="keyword">public</span>: 
    33 <a name="l00036"></a>00036         ivec <a class="code" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19" title="Returns indexes of particles that should be resampled.">resample</a>(RESAMPLING_METHOD method = SYSTEMATIC); 
    34 <a name="l00037"></a>00037         <span class="comment">//TODO get them on the web</span> 
    35 <a name="l00038"></a>00038 }; 
    36 <a name="l00039"></a>00039  
    37 <a name="l00046"></a><a class="code" href="classTrivialPF.html">00046</a> <span class="keyword">class </span><a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> : <span class="keyword">public</span> <a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> { 
    38 <a name="l00047"></a>00047         Array&lt;vec&gt; ptcls; 
    39 <a name="l00048"></a>00048         
    40 <a name="l00049"></a>00049         <span class="keywordtype">bool</span> is_proposal; 
    41 <a name="l00050"></a>00050         <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *prop; 
    42 <a name="l00051"></a>00051         <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *par; 
    43 <a name="l00052"></a>00052         <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *obs; 
    44 <a name="l00053"></a>00053          
    45 <a name="l00054"></a>00054         <span class="keyword">public</span>: 
    46 <a name="l00055"></a>00055         <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;prop, <span class="keywordtype">int</span> n0); 
    47 <a name="l00056"></a>00056         <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;obs, <span class="keywordtype">int</span> n0); 
    48 <a name="l00057"></a>00057         <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(<span class="keyword">const</span> vec &amp;dt, <span class="keywordtype">bool</span> evalll); 
    49 <a name="l00058"></a>00058 }; 
    50 <a name="l00059"></a>00059  
    51 <a name="l00060"></a>00060 <span class="keyword">class </span>MPF : <span class="keyword">public</span> <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> { 
    52 <a name="l00061"></a>00061         Array&lt;BM&gt; Bms; 
    53 <a name="l00062"></a>00062         <span class="keyword">public</span>: 
    54 <a name="l00063"></a>00063         MPF(<a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> &amp;B, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;prop, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;par); 
    55 <a name="l00064"></a>00064         <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(vec &amp;dt);     
    56 <a name="l00065"></a>00065 }; 
    57 <a name="l00066"></a>00066  
    58 <a name="l00067"></a>00067 <span class="preprocessor">#endif // KF_H</span> 
    59 <a name="l00068"></a>00068 <span class="preprocessor"></span> 
     31<a name="l00033"></a>00033         Uniform_RNG URNG; <span class="comment">//used for resampling</span> 
     32<a name="l00034"></a>00034          
     33<a name="l00035"></a>00035 <span class="keyword">public</span>: 
     34<a name="l00037"></a>00037         ivec <a class="code" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19" title="Returns indexes of particles that should be resampled. The ordering MUST guarantee...">resample</a>(RESAMPLING_METHOD method = SYSTEMATIC); 
     35<a name="l00038"></a>00038         <a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> (vec w); 
     36<a name="l00039"></a>00039         <span class="comment">//TODO remove or implement bayes()!</span> 
     37<a name="l00040"></a><a class="code" href="classPF.html#eb06bd7d4325f22f54233967295793b9">00040</a>         <span class="keywordtype">void</span> <a class="code" href="classPF.html#eb06bd7d4325f22f54233967295793b9" title="Incremental Bayes rule.">bayes</a>(<span class="keyword">const</span> vec &amp;dt, <span class="keywordtype">bool</span> evell){}; 
     38<a name="l00041"></a>00041 }; 
     39<a name="l00042"></a>00042  
     40<a name="l00049"></a><a class="code" href="classTrivialPF.html">00049</a> <span class="keyword">class </span><a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> : <span class="keyword">public</span> <a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> { 
     41<a name="l00050"></a>00050         Array&lt;vec&gt; ptcls; 
     42<a name="l00051"></a>00051          
     43<a name="l00052"></a>00052         <span class="keywordtype">bool</span> is_proposal; 
     44<a name="l00053"></a>00053         <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *prop; 
     45<a name="l00054"></a>00054         <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *par; 
     46<a name="l00055"></a>00055         <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *obs; 
     47<a name="l00056"></a>00056          
     48<a name="l00057"></a>00057         <span class="keyword">public</span>: 
     49<a name="l00058"></a>00058         <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;prop, <span class="keywordtype">int</span> n0); 
     50<a name="l00059"></a>00059         <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;obs, <span class="keywordtype">int</span> n0); 
     51<a name="l00060"></a>00060         <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(<span class="keyword">const</span> vec &amp;dt, <span class="keywordtype">bool</span> evalll); 
     52<a name="l00061"></a>00061 }; 
     53<a name="l00062"></a>00062  
     54<a name="l00063"></a>00063 <span class="keyword">class </span>MPF : <span class="keyword">public</span> <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> { 
     55<a name="l00064"></a>00064         Array&lt;BM&gt; Bms; 
     56<a name="l00065"></a>00065         <span class="keyword">public</span>: 
     57<a name="l00066"></a>00066         MPF(<a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> &amp;B, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;prop, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &amp;par); 
     58<a name="l00067"></a>00067         <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(vec &amp;dt);     
     59<a name="l00068"></a>00068 }; 
    6060<a name="l00069"></a>00069  
    61 </pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     61<a name="l00070"></a>00070 <span class="preprocessor">#endif // KF_H</span> 
     62<a name="l00071"></a>00071 <span class="preprocessor"></span> 
     63<a name="l00072"></a>00072  
     64</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:36 2008 for mixpp by&nbsp; 
    6265<a href="http://www.doxygen.org/index.html"> 
    6366<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/html/libPF_8h.html

    r8 r19  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    22<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    3 <title>mixpp: work/mixpp/libPF.h File Reference</title> 
     3<title>mixpp: work/mixpp/bdm/estim/libPF.h File Reference</title> 
    44<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    55<link href="tabs.css" rel="stylesheet" type="text/css"> 
     
    1313  </ul> 
    1414</div> 
    15 <h1>work/mixpp/libPF.h File Reference</h1>Bayesian Filtering using stochastic sampling (Particle Filters). <a href="#_details">More...</a> 
     15<h1>work/mixpp/bdm/estim/libPF.h File Reference</h1>Bayesian Filtering using stochastic sampling (Particle Filters). <a href="#_details">More...</a> 
    1616<p> 
    1717<code>#include &lt;itpp/itbase.h&gt;</code><br> 
    18 <code>#include &quot;<a class="el" href="libBM_8h-source.html">libBM.h</a>&quot;</code><br> 
    19 <code>#include &quot;<a class="el" href="libDC_8h-source.html">libDC.h</a>&quot;</code><br> 
     18<code>#include &quot;<a class="el" href="libBM_8h-source.html">../stat/libBM.h</a>&quot;</code><br> 
     19<code>#include &quot;<a class="el" href="libDC_8h-source.html">../math/libDC.h</a>&quot;</code><br> 
     20 
     21<p> 
     22<div class="dynheader"> 
     23Include dependency graph for libPF.h:</div> 
     24<div class="dynsection"> 
     25<p><center><img src="libPF_8h__incl.png" border="0" usemap="#work/mixpp/bdm/estim/libPF.h_map" alt=""></center> 
     26<map name="work/mixpp/bdm/estim/libPF.h_map"> 
     27<area shape="rect" title="Bayesian Filtering using stochastic sampling (Particle Filters)." alt="" coords="63,161,161,188"><area shape="rect" href="libBM_8h.html" title="Bayesian Filtering using stochastic sampling (Particle Filters)." alt="" coords="57,84,167,111"><area shape="rect" href="libDC_8h.html" title="Bayesian Filtering using stochastic sampling (Particle Filters)." alt="" coords="191,84,308,111"></map> 
     28</div> 
    2029 
    2130<p> 
     
    3342<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr> 
    3443<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>RESAMPLING_METHOD</b> { <b>MULTINOMIAL</b> =  0,  
    35 <b>DETERMINISTIC</b> =  1,  
    36 <b>RESIDUAL</b> =  2,  
     44<b>STRATIFIED</b> =  1,  
    3745<b>SYSTEMATIC</b> =  3 
    3846 }</td></tr> 
     
    4452<dl class="author" compact><dt><b>Author:</b></dt><dd>Vaclav Smidl.</dd></dl> 
    4553----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty<p> 
    46 Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jan 23 11:30:10 2008 for mixpp by&nbsp; 
     54Using IT++ for numerical operations ----------------------------------- <hr size="1"><address style="text-align: right;"><small>Generated on Fri Feb 15 18:57:38 2008 for mixpp by&nbsp; 
    4755<a href="http://www.doxygen.org/index.html"> 
    4856<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> 
  • doc/latex/annotated.tex

    r8 r19  
    22Here are the classes, structs, unions and interfaces with brief descriptions:\begin{CompactList} 
    33\item\contentsline{section}{{\bf BM} (Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities )}{\pageref{classBM}}{} 
     4\item\contentsline{section}{{\bf DS} (Abstract class for discrete-time sources of data )}{\pageref{classDS}}{} 
    45\item\contentsline{section}{{\bf eEF} (General conjugate exponential family posterior density )}{\pageref{classeEF}}{} 
    56\item\contentsline{section}{{\bf enorm$<$ sq\_\-T $>$} (General exponential family density )}{\pageref{classenorm}}{} 
     
    910\item\contentsline{section}{{\bf Kalman$<$ sq\_\-T $>$} (\doxyref{Kalman}{p.}{classKalman} filter with covaraince matrices in square root form )}{\pageref{classKalman}}{} 
    1011\item\contentsline{section}{{\bf KalmanFull} (Basic \doxyref{Kalman}{p.}{classKalman} filter with full matrices (education purpose only)! Will be deleted soon! )}{\pageref{classKalmanFull}}{} 
     12\item\contentsline{section}{{\bf MemDS} (Class representing off-line data stored in memory )}{\pageref{classMemDS}}{} 
    1113\item\contentsline{section}{{\bf mpdf} (Conditional probability density, e.g. modeling some dependencies )}{\pageref{classmpdf}}{} 
    1214\item\contentsline{section}{{\bf PF} (A Particle Filter prototype )}{\pageref{classPF}}{} 
  • doc/latex/classBM.tex

    r8 r19  
    66{\tt \#include $<$libBM.h$>$} 
    77 
    8 Inheritance diagram for BM::\begin{figure}[H] 
     8Inheritance diagram for BM:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=3cm]{classBM} 
     12\includegraphics[width=142pt]{classBM__inherit__graph} 
    1213\end{center} 
    1314\end{figure} 
     
    4647 
    4748 
    48 Implemented in {\bf KalmanFull} \doxyref{}{p.}{classKalmanFull_048b13739b94c331cda08249b278552b}, {\bf Kalman$<$ sq\_\-T $>$} \doxyref{}{p.}{classKalman_e945d9205ca14acbd83ba80ea6f72b8e}, and {\bf TrivialPF} \doxyref{}{p.}{classTrivialPF_77a92bf054d763f806d27fc37a058389}. 
     49Implemented in {\bf KalmanFull} \doxyref{}{p.}{classKalmanFull_048b13739b94c331cda08249b278552b}, {\bf Kalman$<$ sq\_\-T $>$} \doxyref{}{p.}{classKalman_e945d9205ca14acbd83ba80ea6f72b8e}, {\bf PF} \doxyref{}{p.}{classPF_eb06bd7d4325f22f54233967295793b9}, and {\bf TrivialPF} \doxyref{}{p.}{classTrivialPF_77a92bf054d763f806d27fc37a058389}. 
    4950 
    5051The documentation for this class was generated from the following file:\begin{CompactItemize} 
    5152\item  
    52 work/mixpp/{\bf libBM.h}\end{CompactItemize} 
     53work/mixpp/bdm/stat/{\bf libBM.h}\end{CompactItemize} 
  • doc/latex/classKalman.tex

    r8 r19  
    66{\tt \#include $<$libKF.h$>$} 
    77 
    8 Inheritance diagram for Kalman$<$ sq\_\-T $>$::\begin{figure}[H] 
     8Inheritance diagram for Kalman$<$ sq\_\-T $>$:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=2cm]{classKalman} 
     12\includegraphics[width=70pt]{classKalman__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for Kalman$<$ sq\_\-T $>$:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=70pt]{classKalman__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    4553The documentation for this class was generated from the following file:\begin{CompactItemize} 
    4654\item  
    47 work/mixpp/{\bf libKF.h}\end{CompactItemize} 
     55work/mixpp/bdm/estim/{\bf libKF.h}\end{CompactItemize} 
  • doc/latex/classKalmanFull.tex

    r8 r19  
    66{\tt \#include $<$libKF.h$>$} 
    77 
    8 Inheritance diagram for KalmanFull::\begin{figure}[H] 
     8Inheritance diagram for KalmanFull:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=2cm]{classKalmanFull} 
     12\includegraphics[width=56pt]{classKalmanFull__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for KalmanFull:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=56pt]{classKalmanFull__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    4351The documentation for this class was generated from the following files:\begin{CompactItemize} 
    4452\item  
    45 work/mixpp/{\bf libKF.h}\item  
    46 work/mixpp/libKF.cpp\end{CompactItemize} 
     53work/mixpp/bdm/estim/{\bf libKF.h}\item  
     54work/mixpp/bdm/estim/libKF.cpp\end{CompactItemize} 
  • doc/latex/classPF.tex

    r8 r19  
    66{\tt \#include $<$libPF.h$>$} 
    77 
    8 Inheritance diagram for PF::\begin{figure}[H] 
     8Inheritance diagram for PF:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=3cm]{classPF} 
     12\includegraphics[width=49pt]{classPF__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for PF:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=38pt]{classPF__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    1725ivec {\bf resample} (RESAMPLING\_\-METHOD method=SYSTEMATIC)\label{classPF_a0e26b2f6a5884aca49122f3e4f0cf19} 
    1826 
    19 \begin{CompactList}\small\item\em Returns indexes of particles that should be resampled. \item\end{CompactList}\end{CompactItemize} 
     27\begin{CompactList}\small\item\em Returns indexes of particles that should be resampled. The ordering MUST guarantee inplace replacement. (Important for MPF.). \item\end{CompactList}\item  
     28\textbf{PF} (vec w)\label{classPF_c37f95f0c1661c7f1e3fccb31d39de73} 
     29 
     30\item  
     31void {\bf bayes} (const vec \&dt, bool evell) 
     32\begin{CompactList}\small\item\em Incremental Bayes rule. \item\end{CompactList}\end{CompactItemize} 
    2033\subsection*{Protected Attributes} 
    2134\begin{CompactItemize} 
     
    2538\item  
    2639vec \textbf{w}\label{classPF_f6bc92f7979af4513b06b161497ba868} 
     40 
     41\item  
     42Uniform\_\-RNG \textbf{URNG}\label{classPF_3568ca7c3b3175d98b548f496b4c34dd} 
    2743 
    2844\end{CompactItemize} 
     
    3450Bayesian Filtering equations hold.  
    3551 
     52\subsection{Member Function Documentation} 
     53\index{PF@{PF}!bayes@{bayes}} 
     54\index{bayes@{bayes}!PF@{PF}} 
     55\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void PF::bayes (const vec \& {\em dt}, bool {\em evall})\hspace{0.3cm}{\tt  [inline, virtual]}}\label{classPF_eb06bd7d4325f22f54233967295793b9} 
     56 
     57 
     58Incremental Bayes rule.  
     59 
     60\begin{Desc} 
     61\item[Parameters:] 
     62\begin{description} 
     63\item[{\em dt}]vector of input data \item[{\em evall}]If true, the filter will compute likelihood of the data record and store it in {\tt ll} \end{description} 
     64\end{Desc} 
     65 
     66 
     67Implements {\bf BM} \doxyref{}{p.}{classBM_c52edf4ad6e1dff9bf64b9e1e0cfb1f0}. 
     68 
     69Reimplemented in {\bf TrivialPF} \doxyref{}{p.}{classTrivialPF_77a92bf054d763f806d27fc37a058389}. 
     70 
    3671The documentation for this class was generated from the following files:\begin{CompactItemize} 
    3772\item  
    38 work/mixpp/{\bf libPF.h}\item  
    39 work/mixpp/libPF.cpp\end{CompactItemize} 
     73work/mixpp/bdm/estim/{\bf libPF.h}\item  
     74work/mixpp/bdm/estim/libPF.cpp\end{CompactItemize} 
  • doc/latex/classRV.tex

    r8 r19  
    1818 
    1919\begin{CompactList}\small\item\em Empty constructor will be set later. \item\end{CompactList}\item  
    20 int {\bf length} ()\label{classRV_a764092415291a0e6452a3711749d18e} 
     20int {\bf count} ()\label{classRV_9dcaca7b87cfb0e24a19260067d62f04} 
    2121 
    2222\begin{CompactList}\small\item\em Return length (number of scalars) of the \doxyref{RV}{p.}{classRV}. \item\end{CompactList}\item  
    23 ivec {\bf rvfind} ({\bf RV} rv2)\label{classRV_45b869bced40dc3fa0df584aaf8228c0} 
     23ivec {\bf find} ({\bf RV} rv2)\label{classRV_6b078b1086224aca3a9e5a203e647fb6} 
    2424 
    2525\begin{CompactList}\small\item\em Find indexes of another rv in self. \item\end{CompactList}\item  
    26 {\bf RV} {\bf rvadd} ({\bf RV} rv2)\label{classRV_f47ab0015ebac822da3b2e00f42a8fc6} 
     26{\bf RV} {\bf add} ({\bf RV} rv2)\label{classRV_f068a86abb5a6e46fcf76c939d2ed2ec} 
    2727 
    2828\begin{CompactList}\small\item\em Add (concat) another variable to the current one. \item\end{CompactList}\item  
    29 {\bf RV} {\bf rvsubt} ({\bf RV} rv2)\label{classRV_269023ac4d41b21c4e1f7f17db1603b9} 
     29{\bf RV} {\bf subt} ({\bf RV} rv2)\label{classRV_4c5ec5e913fc598e242cb930ae8bdf4a} 
    3030 
    3131\begin{CompactList}\small\item\em Subtract another variable from the current one. \item\end{CompactList}\item  
    32 {\bf RV} {\bf rvsubselect} (ivec ind)\label{classRV_70a53f2bc37929bae899b0b24cda9d8e} 
     32{\bf RV} {\bf subselect} (ivec ind)\label{classRV_2bf35b18a32aad419f0516273939628e} 
    3333 
    3434\begin{CompactList}\small\item\em Select only variables at indeces ind. \item\end{CompactList}\item  
     
    5454The documentation for this class was generated from the following files:\begin{CompactItemize} 
    5555\item  
    56 work/mixpp/{\bf libBM.h}\item  
    57 work/mixpp/libBM.cpp\end{CompactItemize} 
     56work/mixpp/bdm/stat/{\bf libBM.h}\item  
     57work/mixpp/bdm/stat/libBM.cpp\end{CompactItemize} 
  • doc/latex/classTrivialPF.tex

    r8 r19  
    66{\tt \#include $<$libPF.h$>$} 
    77 
    8 Inheritance diagram for TrivialPF::\begin{figure}[H] 
     8Inheritance diagram for TrivialPF:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=3cm]{classTrivialPF} 
     12\includegraphics[width=49pt]{classTrivialPF__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for TrivialPF:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=67pt]{classTrivialPF__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    4351 
    4452 
    45 Implements {\bf BM} \doxyref{}{p.}{classBM_c52edf4ad6e1dff9bf64b9e1e0cfb1f0}. 
     53Reimplemented from {\bf PF} \doxyref{}{p.}{classPF_eb06bd7d4325f22f54233967295793b9}. 
    4654 
    4755The documentation for this class was generated from the following files:\begin{CompactItemize} 
    4856\item  
    49 work/mixpp/{\bf libPF.h}\item  
    50 work/mixpp/libPF.cpp\end{CompactItemize} 
     57work/mixpp/bdm/estim/{\bf libPF.h}\item  
     58work/mixpp/bdm/estim/libPF.cpp\end{CompactItemize} 
  • doc/latex/classeEF.tex

    r8 r19  
    66{\tt \#include $<$libEF.h$>$} 
    77 
    8 Inheritance diagram for eEF::\begin{figure}[H] 
     8Inheritance diagram for eEF:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=3cm]{classeEF} 
     12\includegraphics[width=67pt]{classeEF__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for eEF:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=41pt]{classeEF__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    3038The documentation for this class was generated from the following file:\begin{CompactItemize} 
    3139\item  
    32 work/mixpp/{\bf libEF.h}\end{CompactItemize} 
     40work/mixpp/bdm/stat/{\bf libEF.h}\end{CompactItemize} 
  • doc/latex/classenorm.tex

    r8 r19  
    66{\tt \#include $<$libEF.h$>$} 
    77 
    8 Inheritance diagram for enorm$<$ sq\_\-T $>$::\begin{figure}[H] 
     8Inheritance diagram for enorm$<$ sq\_\-T $>$:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=3cm]{classenorm} 
     12\includegraphics[width=67pt]{classenorm__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for enorm$<$ sq\_\-T $>$:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=72pt]{classenorm__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    2634vec {\bf sample} () 
    2735\begin{CompactList}\small\item\em Returns the required moment of the \doxyref{epdf}{p.}{classepdf}. \item\end{CompactList}\item  
     36mat \textbf{sample} (int N)\label{classenorm_531bd094057afa768f4853a7e441920d} 
     37 
     38\item  
    2839double \textbf{eval} (const vec \&val)\label{classenorm_93107f05a8e9b34b64853767200121a4} 
     40 
     41\end{CompactItemize} 
     42\subsection*{Public Attributes} 
     43\begin{CompactItemize} 
     44\item  
     45Normal\_\-RNG \textbf{RNG}\label{classenorm_a4de82a0d7ba9eaf31206318ae35d0d5} 
    2946 
    3047\end{CompactItemize} 
     
    4865Returns a sample from the density, \$x  epdf(rv)\$  
    4966 
    50 Reimplemented from {\bf epdf} \doxyref{}{p.}{classepdf_e6ce993603a95c2645eb86305ea51396}. 
     67Implements {\bf epdf} \doxyref{}{p.}{classepdf_7f74d871d50b9ff360f1b3879092a9fa}. 
    5168 
    5269The documentation for this class was generated from the following file:\begin{CompactItemize} 
    5370\item  
    54 work/mixpp/{\bf libEF.h}\end{CompactItemize} 
     71work/mixpp/bdm/stat/{\bf libEF.h}\end{CompactItemize} 
  • doc/latex/classepdf.tex

    r8 r19  
    66{\tt \#include $<$libBM.h$>$} 
    77 
    8 Inheritance diagram for epdf::\begin{figure}[H] 
     8Inheritance diagram for epdf:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=3cm]{classepdf} 
     12\includegraphics[width=67pt]{classepdf__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for epdf:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=41pt]{classepdf__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    1523\begin{CompactItemize} 
    1624\item  
    17 virtual vec {\bf sample} () 
     25virtual vec {\bf sample} ()=0 
    1826\begin{CompactList}\small\item\em Returns the required moment of the \doxyref{epdf}{p.}{classepdf}. \item\end{CompactList}\item  
    1927virtual double \textbf{eval} (const vec \&val)\label{classepdf_f333ceeb88ebc37d81fcd4cea4526bfc} 
     
    2836\index{epdf@{epdf}!sample@{sample}} 
    2937\index{sample@{sample}!epdf@{epdf}} 
    30 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual vec epdf::sample ()\hspace{0.3cm}{\tt  [inline, virtual]}}\label{classepdf_e6ce993603a95c2645eb86305ea51396} 
     38\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual vec epdf::sample ()\hspace{0.3cm}{\tt  [pure virtual]}}\label{classepdf_7f74d871d50b9ff360f1b3879092a9fa} 
    3139 
    3240 
     
    3543Returns a sample from the density, \$x  epdf(rv)\$  
    3644 
    37 Reimplemented in {\bf enorm$<$ sq\_\-T $>$} \doxyref{}{p.}{classenorm_6020bcd89db2c9584bd8871001bd2023}. 
     45Implemented in {\bf enorm$<$ sq\_\-T $>$} \doxyref{}{p.}{classenorm_6020bcd89db2c9584bd8871001bd2023}. 
    3846 
    3947The documentation for this class was generated from the following file:\begin{CompactItemize} 
    4048\item  
    41 work/mixpp/{\bf libBM.h}\end{CompactItemize} 
     49work/mixpp/bdm/stat/{\bf libBM.h}\end{CompactItemize} 
  • doc/latex/classfnc.tex

    r3 r19  
    66{\tt \#include $<$libBM.h$>$} 
    77 
     8Inheritance diagram for fnc:\nopagebreak 
     9\begin{figure}[H] 
     10\begin{center} 
     11\leavevmode 
     12\includegraphics[width=48pt]{classfnc__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for fnc:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=37pt]{classfnc__coll__graph} 
     20\end{center} 
     21\end{figure} 
    822 
    923 
     
    1327The documentation for this class was generated from the following file:\begin{CompactItemize} 
    1428\item  
    15 work/mixpp/{\bf libBM.h}\end{CompactItemize} 
     29work/mixpp/bdm/stat/{\bf libBM.h}\end{CompactItemize} 
  • doc/latex/classfsqmat.tex

    r8 r19  
    66{\tt \#include $<$libDC.h$>$} 
    77 
    8 Inheritance diagram for fsqmat::\begin{figure}[H] 
     8Inheritance diagram for fsqmat:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=2cm]{classfsqmat} 
     12\includegraphics[width=47pt]{classfsqmat__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for fsqmat:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=47pt]{classfsqmat__coll__graph} 
    1220\end{center} 
    1321\end{figure} 
     
    2129The documentation for this class was generated from the following file:\begin{CompactItemize} 
    2230\item  
    23 work/mixpp/{\bf libDC.h}\end{CompactItemize} 
     31work/mixpp/bdm/math/{\bf libDC.h}\end{CompactItemize} 
  • doc/latex/classmpdf.tex

    r8 r19  
    66{\tt \#include $<$libBM.h$>$} 
    77 
    8 Inherited by mEF. 
    9  
     8Inheritance diagram for mpdf:\nopagebreak 
     9\begin{figure}[H] 
     10\begin{center} 
     11\leavevmode 
     12\includegraphics[width=43pt]{classmpdf__inherit__graph} 
     13\end{center} 
     14\end{figure} 
     15Collaboration diagram for mpdf:\nopagebreak 
     16\begin{figure}[H] 
     17\begin{center} 
     18\leavevmode 
     19\includegraphics[width=43pt]{classmpdf__coll__graph} 
     20\end{center} 
     21\end{figure} 
    1022\subsection*{Public Member Functions} 
    1123\begin{CompactItemize} 
     
    3345The documentation for this class was generated from the following file:\begin{CompactItemize} 
    3446\item  
    35 work/mixpp/{\bf libBM.h}\end{CompactItemize} 
     47work/mixpp/bdm/stat/{\bf libBM.h}\end{CompactItemize} 
  • doc/latex/classsqmat.tex

    r8 r19  
    66{\tt \#include $<$libDC.h$>$} 
    77 
    8 Inheritance diagram for sqmat::\begin{figure}[H] 
     8Inheritance diagram for sqmat:\nopagebreak 
     9\begin{figure}[H] 
    910\begin{center} 
    1011\leavevmode 
    11 \includegraphics[height=2cm]{classsqmat} 
     12\includegraphics[width=78pt]{classsqmat__inherit__graph} 
    1213\end{center} 
    1314\end{figure} 
     
    2526 
    2627\begin{CompactList}\small\item\em Logarithm of a determinant. \item\end{CompactList}\item  
     28virtual vec {\bf sqrt\_\-mult} (vec \&v)=0 
     29\begin{CompactList}\small\item\em Multiplies square root of \$V\$ by vector \$x\$. \item\end{CompactList}\item  
    2730virtual double {\bf qform} (vec \&v)=0\label{classsqmat_44e079468bc8bfccf634dc85b32ba6be} 
    2831 
     
    3740 
    3841\begin{CompactList}\small\item\em Reimplementing common functions of mat: \doxyref{cols()}{p.}{classsqmat_743d3799d9e73403230c54e14ecf09ed}. \item\end{CompactList}\end{CompactItemize} 
    39 \subsection*{Friends} 
     42\subsection*{Protected Attributes} 
    4043\begin{CompactItemize} 
    4144\item  
    42 std::ostream \& \textbf{operator$<$$<$} (std::ostream \&os, {\bf sqmat} \&sq)\label{classsqmat_c9eb5aa871432ddb9c5a45ddbbb19eab} 
     45int \textbf{dim}\label{classsqmat_0abed904bdc0882373ba9adba919689d} 
    4346 
    4447\end{CompactItemize} 
     
    7376\item[{\em C}]multiplying matrix, \item[{\em trans}]if true, product \$V = C'$\ast$V$\ast$C\$ will be computed instead; \end{description} 
    7477\end{Desc} 
     78\index{sqmat@{sqmat}!sqrt_mult@{sqrt\_\-mult}} 
     79\index{sqrt_mult@{sqrt\_\-mult}!sqmat@{sqmat}} 
     80\subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual vec sqmat::sqrt\_\-mult (vec \& {\em v})\hspace{0.3cm}{\tt  [pure virtual]}}\label{classsqmat_b5236c8a050199e1a9d338b0da1a08d2} 
    7581 
     82 
     83Multiplies square root of \$V\$ by vector \$x\$.  
     84 
     85Used e.g. in generating normal samples.  
    7686 
    7787The documentation for this class was generated from the following file:\begin{CompactItemize} 
    7888\item  
    79 work/mixpp/{\bf libDC.h}\end{CompactItemize} 
     89work/mixpp/bdm/math/{\bf libDC.h}\end{CompactItemize} 
  • doc/latex/doxygen.sty

    r8 r19  
    1111\rhead[\fancyplain{}{\bfseries\leftmark}] 
    1212        {\fancyplain{}{\bfseries\thepage}} 
    13 \rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Wed Jan 23 11:30:10 2008 for mixpp by Doxygen }]{} 
    14 \lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Wed Jan 23 11:30:10 2008 for mixpp by Doxygen }} 
     13\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Fri Feb 15 18:57:36 2008 for mixpp by Doxygen }]{} 
     14\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Feb 15 18:57:36 2008 for mixpp by Doxygen }} 
    1515\cfoot{} 
    1616\newenvironment{Code} 
  • doc/latex/files.tex

    r8 r19  
    11\section{mixpp File List} 
    22Here is a list of all documented files with brief descriptions:\begin{CompactList} 
    3 \item\contentsline{section}{work/mixpp/\textbf{itpp\_\-ext.h} }{\pageref{itpp__ext_8h}}{} 
    4 \item\contentsline{section}{work/mixpp/{\bf libBM.h} (Bayesian Models (bm) that use Bayes rule to learn from observations )}{\pageref{libBM_8h}}{} 
    5 \item\contentsline{section}{work/mixpp/{\bf libDC.h} (Matrices in decomposed forms (LDL', LU, UDU', etc) )}{\pageref{libDC_8h}}{} 
    6 \item\contentsline{section}{work/mixpp/{\bf libEF.h} (Probability distributions for Exponential Family models )}{\pageref{libEF_8h}}{} 
    7 \item\contentsline{section}{work/mixpp/{\bf libKF.h} (Bayesian Filtering for linear Gaussian models (\doxyref{Kalman}{p.}{classKalman} Filter) and extensions )}{\pageref{libKF_8h}}{} 
    8 \item\contentsline{section}{work/mixpp/{\bf libPF.h} (Bayesian Filtering using stochastic sampling (Particle Filters) )}{\pageref{libPF_8h}}{} 
     3\item\contentsline{section}{work/mixpp/bdm/\textbf{itpp\_\-ext.h} }{\pageref{itpp__ext_8h}}{} 
     4\item\contentsline{section}{work/mixpp/bdm/estim/{\bf libKF.h} (Bayesian Filtering for linear Gaussian models (\doxyref{Kalman}{p.}{classKalman} Filter) and extensions )}{\pageref{libKF_8h}}{} 
     5\item\contentsline{section}{work/mixpp/bdm/estim/{\bf libPF.h} (Bayesian Filtering using stochastic sampling (Particle Filters) )}{\pageref{libPF_8h}}{} 
     6\item\contentsline{section}{work/mixpp/bdm/math/{\bf libDC.h} (Matrices in decomposed forms (LDL', LU, UDU', etc) )}{\pageref{libDC_8h}}{} 
     7\item\contentsline{section}{work/mixpp/bdm/stat/{\bf libBM.h} (Bayesian Models (bm) that use Bayes rule to learn from observations )}{\pageref{libBM_8h}}{} 
     8\item\contentsline{section}{work/mixpp/bdm/stat/{\bf libDS.h} (Common DataSources )}{\pageref{libDS_8h}}{} 
     9\item\contentsline{section}{work/mixpp/bdm/stat/{\bf libEF.h} (Probability distributions for Exponential Family models )}{\pageref{libEF_8h}}{} 
     10\item\contentsline{section}{work/mixpp/bdm/stat/\textbf{libFN.h} }{\pageref{libFN_8h}}{} 
    911\end{CompactList} 
  • doc/latex/hierarchy.tex

    r8 r19  
    99\item \contentsline{section}{TrivialPF}{\pageref{classTrivialPF}}{} 
    1010\end{CompactList} 
     11\end{CompactList} 
     12\item \contentsline{section}{DS}{\pageref{classDS}}{} 
     13\begin{CompactList} 
     14\item \contentsline{section}{MemDS}{\pageref{classMemDS}}{} 
    1115\end{CompactList} 
    1216\item \contentsline{section}{epdf}{\pageref{classepdf}}{} 
  • doc/latex/libBM_8h.tex

    r4 r19  
    1 \section{work/mixpp/libBM.h File Reference} 
    2 \label{libBM_8h}\index{work/mixpp/libBM.h@{work/mixpp/libBM.h}} 
     1\section{work/mixpp/bdm/stat/libBM.h File Reference} 
     2\label{libBM_8h}\index{work/mixpp/bdm/stat/libBM.h@{work/mixpp/bdm/stat/libBM.h}} 
    33Bayesian Models (bm) that use Bayes rule to learn from observations.  
    44 
    55{\tt \#include $<$itpp/itbase.h$>$}\par 
     6 
     7 
     8Include dependency graph for libBM.h:\nopagebreak 
     9\begin{figure}[H] 
     10\begin{center} 
     11\leavevmode 
     12\includegraphics[width=100pt]{libBM_8h__incl} 
     13\end{center} 
     14\end{figure} 
     15 
     16 
     17This graph shows which files directly or indirectly include this file:\nopagebreak 
     18\begin{figure}[H] 
     19\begin{center} 
     20\leavevmode 
     21\includegraphics[width=420pt]{libBM_8h__dep__incl} 
     22\end{center} 
     23\end{figure} 
    624\subsection*{Classes} 
    725\begin{CompactItemize} 
     
    1634\begin{CompactList}\small\item\em Probability density function with numerical statistics, e.g. posterior density. \item\end{CompactList}\item  
    1735class {\bf mpdf} 
    18 \begin{CompactList}\small\item\em Conditional probability density, e.g. modeling some dependencies. \item\end{CompactList}\end{CompactItemize} 
     36\begin{CompactList}\small\item\em Conditional probability density, e.g. modeling some dependencies. \item\end{CompactList}\item  
     37class {\bf DS} 
     38\begin{CompactList}\small\item\em Abstract class for discrete-time sources of data. \item\end{CompactList}\end{CompactItemize} 
    1939 
    2040 
  • doc/latex/libDC_8h.tex

    r8 r19  
    1 \section{work/mixpp/libDC.h File Reference} 
    2 \label{libDC_8h}\index{work/mixpp/libDC.h@{work/mixpp/libDC.h}} 
     1\section{work/mixpp/bdm/math/libDC.h File Reference} 
     2\label{libDC_8h}\index{work/mixpp/bdm/math/libDC.h@{work/mixpp/bdm/math/libDC.h}} 
    33Matrices in decomposed forms (LDL', LU, UDU', etc).  
    44 
    55{\tt \#include $<$itpp/itbase.h$>$}\par 
     6 
     7 
     8Include dependency graph for libDC.h:\nopagebreak 
     9\begin{figure}[H] 
     10\begin{center} 
     11\leavevmode 
     12\includegraphics[width=104pt]{libDC_8h__incl} 
     13\end{center} 
     14\end{figure} 
     15 
     16 
     17This graph shows which files directly or indirectly include this file:\nopagebreak 
     18\begin{figure}[H] 
     19\begin{center} 
     20\leavevmode 
     21\includegraphics[width=276pt]{libDC_8h__dep__incl} 
     22\end{center} 
     23\end{figure} 
    624\subsection*{Classes} 
    725\begin{CompactItemize} 
  • doc/latex/libEF_8h.tex

    r8 r19  
    1 \section{work/mixpp/libEF.h File Reference} 
    2 \label{libEF_8h}\index{work/mixpp/libEF.h@{work/mixpp/libEF.h}} 
     1\section{work/mixpp/bdm/stat/libEF.h File Reference} 
     2\label{libEF_8h}\index{work/mixpp/bdm/stat/libEF.h@{work/mixpp/bdm/stat/libEF.h}} 
    33Probability distributions for Exponential Family models.  
    44 
    55{\tt \#include $<$itpp/itbase.h$>$}\par 
     6{\tt \#include \char`\"{}../math/libDC.h\char`\"{}}\par 
     7{\tt \#include \char`\"{}libBM.h\char`\"{}}\par 
     8 
     9 
     10Include dependency graph for libEF.h:\nopagebreak 
     11\begin{figure}[H] 
     12\begin{center} 
     13\leavevmode 
     14\includegraphics[width=116pt]{libEF_8h__incl} 
     15\end{center} 
     16\end{figure} 
    617\subsection*{Classes} 
    718\begin{CompactItemize} 
  • doc/latex/libKF_8h.tex

    r8 r19  
    1 \section{work/mixpp/libKF.h File Reference} 
    2 \label{libKF_8h}\index{work/mixpp/libKF.h@{work/mixpp/libKF.h}} 
     1\section{work/mixpp/bdm/estim/libKF.h File Reference} 
     2\label{libKF_8h}\index{work/mixpp/bdm/estim/libKF.h@{work/mixpp/bdm/estim/libKF.h}} 
    33Bayesian Filtering for linear Gaussian models (\doxyref{Kalman}{p.}{classKalman} Filter) and extensions.  
    44 
    55{\tt \#include $<$itpp/itbase.h$>$}\par 
    6 {\tt \#include \char`\"{}libBM.h\char`\"{}}\par 
    7 {\tt \#include \char`\"{}libDC.h\char`\"{}}\par 
     6{\tt \#include \char`\"{}../stat/libBM.h\char`\"{}}\par 
     7{\tt \#include \char`\"{}../math/libDC.h\char`\"{}}\par 
     8 
     9 
     10Include dependency graph for libKF.h:\nopagebreak 
     11\begin{figure}[H] 
     12\begin{center} 
     13\leavevmode 
     14\includegraphics[width=135pt]{libKF_8h__incl} 
     15\end{center} 
     16\end{figure} 
    817\subsection*{Classes} 
    918\begin{CompactItemize} 
  • doc/latex/libPF_8h.tex

    r8 r19  
    1 \section{work/mixpp/libPF.h File Reference} 
    2 \label{libPF_8h}\index{work/mixpp/libPF.h@{work/mixpp/libPF.h}} 
     1\section{work/mixpp/bdm/estim/libPF.h File Reference} 
     2\label{libPF_8h}\index{work/mixpp/bdm/estim/libPF.h@{work/mixpp/bdm/estim/libPF.h}} 
    33Bayesian Filtering using stochastic sampling (Particle Filters).  
    44 
    55{\tt \#include $<$itpp/itbase.h$>$}\par 
    6 {\tt \#include \char`\"{}libBM.h\char`\"{}}\par 
    7 {\tt \#include \char`\"{}libDC.h\char`\"{}}\par 
     6{\tt \#include \char`\"{}../stat/libBM.h\char`\"{}}\par 
     7{\tt \#include \char`\"{}../math/libDC.h\char`\"{}}\par 
     8 
     9 
     10Include dependency graph for libPF.h:\nopagebreak 
     11\begin{figure}[H] 
     12\begin{center} 
     13\leavevmode 
     14\includegraphics[width=135pt]{libPF_8h__incl} 
     15\end{center} 
     16\end{figure} 
    817\subsection*{Classes} 
    918\begin{CompactItemize} 
     
    1928\item  
    2029enum \textbf{RESAMPLING\_\-METHOD} \{ \textbf{MULTINOMIAL} =  0,  
    21 \textbf{DETERMINISTIC} =  1,  
    22 \textbf{RESIDUAL} =  2,  
     30\textbf{STRATIFIED} =  1,  
    2331\textbf{SYSTEMATIC} =  3 
    2432 \} 
  • doc/latex/refman.tex

    r8 r19  
    2121{\large Generated by Doxygen 1.5.3}\\ 
    2222\vspace*{0.5cm} 
    23 {\small Wed Jan 23 11:30:10 2008}\\ 
     23{\small Fri Feb 15 18:57:36 2008}\\ 
    2424\end{center} 
    2525\end{titlepage} 
     
    3737\chapter{mixpp Class Documentation} 
    3838\input{classBM} 
     39\include{classDS} 
    3940\include{classeEF} 
    4041\include{classenorm} 
     
    4445\include{classKalman} 
    4546\include{classKalmanFull} 
     47\include{classMemDS} 
    4648\include{classmpdf} 
    4749\include{classPF} 
     
    5052\include{classTrivialPF} 
    5153\chapter{mixpp File Documentation} 
    52 \input{libBM_8h} 
     54\input{libKF_8h} 
     55\include{libPF_8h} 
    5356\include{libDC_8h} 
     57\include{libBM_8h} 
     58\include{libDS_8h} 
    5459\include{libEF_8h} 
    55 \include{libKF_8h} 
    56 \include{libPF_8h} 
    5760\printindex 
    5861\end{document} 
  • tests/testKF.cpp

    r18 r19  
    99 
    1010int main() { 
     11 
    1112 
    1213        // Klaman filter 
     
    4142        Xt2=zeros( 2,Ndat ); 
    4243 
    43         Kalman<ldmat> KF( A,B,C,D,ldmat(R),ldmat(Q),ldmat(P0),mu0 ); 
     44        Kalman<ldmat> KF( A,B,C,D,ldmat(diag(R)),ldmat(diag(Q)),ldmat(diag(P0)),mu0 ); 
    4445//      cout << KF; 
    4546        KalmanFull KF2( A,B,C,D,R,Q,P0,mu0 ); 
  • tests/testPF.cpp

    r14 r19  
    11#include <itpp/itbase.h> 
    2 #include "libPF.h" 
    3 #include "libDC.h" 
    4 #include "libEF.h" 
     2#include <estim/libPF.h> 
     3#include <math/libDC.h> 
     4#include <stat/libEF.h> 
    55 
    66using namespace itpp; 
     
    1717         
    1818        mat A = "1"; 
    19         ldmat R("1"); 
     19        vec vR = "1"; 
     20        ldmat R(vR); 
    2021         
    2122