#include "libDS.h" //#include "..\user_info.h" using namespace bdm; void MemDS::getdata ( vec &dt ) { int i; it_assert_debug ( dt.length() ==rowid.length(), "MemDS:getdata incompatible dt" ); for ( i=0;i( root, "y" ); RV *urv = UI::build( root, "u" ); RV *rrv = UI::build( root, "rgr" ); mat Th; UI::get( Th, root, "theta" ); vec mu0; if( root.exists( "offset" )) UI::get( mu0, root, "offset" ); else mu0= zeros( yrv->_dsize() ); mat sqR; UI::get( sqR, root, "r" ); set_parameters(Th,mu0,sqR); set_drv(*yrv,*urv,*rrv); if(root.exists("opt")) set_options(root["opt"]); } /*void ArxDS::to_setting( Setting &root ) const { Transport::to_setting( root ); Setting &kilometers_setting = root.add("kilometers", Setting::TypeInt ); kilometers_setting = kilometers; UI::save( passengers, root, "passengers" ); }*/ CsvFileDS::CsvFileDS ( const string& fname, const string& orientation ) :FileDS() { time = 0; vec data_line; string line; ifstream fs; fs.open(fname.c_str()); if(fs.is_open()) { while ( getline(fs, line) ) { data_line.set(line); Data.append_row(data_line); } } if(orientation == "BY_ROW") { transpose(Data, Data); } } //! Auxiliary function building full history of rv0 RV fullrgr ( const RV &drv0, const RV &urv0, const RV &rrv0 ) { RV T ( urv0 ); RV pom = concat ( drv0, urv0 ); int mint = rrv0.mint(); for ( int i=0; i>mint; i-- ) { pom.t ( -1 ); T.add ( pom ); } return T; } void ITppFileDS::from_setting( const Setting &root ) { RV* rvtmp = UI::build(root, "rv" ); it_file it ( root["filename"] ); it << Name ( root["varname"] ); it >> Data; time = 0; //rowid and delays are ignored set_drv(*rvtmp,RV()); } /*void ITppFileDS::to_setting( Setting &root ) const { Transport::to_setting( root ); Setting &kilometers_setting = root.add("kilometers", Setting::TypeInt ); kilometers_setting = kilometers; UI::save( passengers, root, "passengers" ); }*/ void stateDS::from_setting( const Setting &root ) { IM = UI::build(root, "IM"); OM = UI::build(root, "OM"); dt.set_length( OM->dimension() ); xt.set_length( IM->dimension() ); ut.set_length(0); RV* rvtmp = UI::build(root["IM"], "rvu"); //set_drv(rvtmp); } /*void stateDS::to_setting( Setting &root ) const { Transport::to_setting( root ); Setting &kilometers_setting = root.add("kilometers", Setting::TypeInt ); kilometers_setting = kilometers; UI::save( passengers, root, "passengers" ); }*/