Changeset 176 for bdm/stat/libBM.h

Show
Ignore:
Timestamp:
10/09/08 11:32:12 (16 years ago)
Author:
smidl
Message:

Corrections to mixtures & merger

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • bdm/stat/libBM.h

    r175 r176  
    8080        bool add ( const RV &rv2 ); 
    8181        //! Subtract  another variable from the current one 
    82         RV subt ( const RV rv2 ) const; 
     82        RV subt ( const RV &rv2 ) const; 
    8383        //! Select only variables at indeces ind 
    84         RV subselect ( ivec ind ) const; 
     84        RV subselect ( const ivec &ind ) const; 
    8585        //! Select only variables at indeces ind 
    86         RV operator() ( ivec ind ) const; 
     86        RV operator() ( const ivec &ind ) const; 
    8787        //! Shift \c time shifted by delta. 
    8888        void t ( int delta ); 
     
    9090        str tostr() const; 
    9191        //! generate indeces into \param crv data vector that form data vector of self. 
    92         ivec dataind(RV crv) const; 
     92        ivec dataind(const RV &crv) const; 
    9393 
    9494        //!access function 
     
    103103        //!access function 
    104104        std::string name ( int at ) {return names ( at );}; 
     105         
     106        //!access function 
     107        void set_id ( int at, int id0 ) {ids ( at )=id0;}; 
     108        //!access function 
     109        void set_size ( int at, int size0 ) {sizes ( at )=size0; tsize=sum(sizes);}; 
     110        //!access function 
     111        void set_time ( int at, int time0 ) {times ( at )=time0;}; 
     112 
    105113        //!Assign unused ids to this rv  
    106114        void newids(); 
     
    160168 
    161169        //! Compute log-probability of multiple values argument \c val 
    162         virtual vec evalpdflog ( const mat &Val ) const { 
     170        virtual vec evalpdflog_m ( const mat &Val ) const { 
    163171                vec x ( Val.cols() ); 
    164172                for ( int i=0;i<Val.cols();i++ ) {x ( i ) =evalpdflog( Val.get_col(i) ) ;} 
     
    318326        //! I.e. marginal likelihood of the data with the posterior integrated out. 
    319327        virtual double logpred(const vec &dt)const{it_error("Not implemented");return 0.0;} 
     328        //! Matrix version of logpred 
     329        vec logpred_m(const mat &dt)const{vec tmp(dt.cols());for(int i=0;i<dt.cols();i++){tmp(i)=logpred(dt.get_col(i));}return tmp;} 
    320330         
    321331        //! Destructor for future use;