Changeset 377 for bdm/estim/libKF.cpp
- Timestamp:
- 06/15/09 18:27:16 (15 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
bdm/estim/libKF.cpp
r358 r377 250 250 } 251 251 252 void EKFCh::from_setting( const Setting & root )252 void EKFCh::from_setting( const Setting &set ) 253 253 { 254 diffbifn* IM = UI::build<diffbifn>( root, "IM");255 diffbifn* OM = UI::build<diffbifn>( root, "OM");254 diffbifn* IM = UI::build<diffbifn>(set, "IM"); 255 diffbifn* OM = UI::build<diffbifn>(set, "OM"); 256 256 257 257 //statistics 258 258 int dim=IM->dimension(); 259 259 vec mu0; 260 if( root.exists("mu0"))261 UI::get( mu0, root, "mu0");260 if(set.exists("mu0")) 261 UI::get( mu0, set, "mu0"); 262 262 else 263 263 mu0=zeros(dim); 264 264 265 265 mat P0; 266 if( root.exists("dP0"))266 if(set.exists("dP0")) 267 267 { 268 268 vec dP0; 269 UI::get( dP0, root, "dP0");269 UI::get( dP0, set, "dP0"); 270 270 P0=diag(dP0); 271 271 } 272 else if ( root.exists( "P0" ) )273 UI::get(P0, root, "P0");272 else if ( set.exists( "P0" ) ) 273 UI::get(P0, set, "P0"); 274 274 else 275 275 P0=eye(dim); … … 279 279 //parameters 280 280 vec dQ, dR; 281 UI::get( dQ, root, "dQ");282 UI::get( dR, root, "dR");281 UI::get( dQ, set, "dQ"); 282 UI::get( dR, set, "dR"); 283 283 set_parameters(IM, OM, diag(dQ), diag(dR)); 284 284 285 285 //connect 286 RV* drv = UI::build<RV>( root, "drv");286 RV* drv = UI::build<RV>(set, "drv"); 287 287 set_drv(*drv); 288 RV* rv = UI::build<RV>( root, "rv");288 RV* rv = UI::build<RV>(set, "rv"); 289 289 set_rv(*rv); 290 290 291 291 string options; 292 if( root.lookupValue( "options", options ))292 if(set.lookupValue( "options", options )) 293 293 set_options(options); 294 294 } 295 295 296 /*void EKFCh::to_setting( Setting & root ) const296 /*void EKFCh::to_setting( Setting &set ) const 297 297 { 298 Transport::to_setting( root );299 300 Setting &kilometers_setting = root.add("kilometers", Setting::TypeInt );298 Transport::to_setting( set ); 299 300 Setting &kilometers_setting = set.add("kilometers", Setting::TypeInt ); 301 301 kilometers_setting = kilometers; 302 302 303 UI::save( passengers, root, "passengers" );303 UI::save( passengers, set, "passengers" ); 304 304 }*/ 305 305 306 void MultiModel::from_setting( const Setting & root )306 void MultiModel::from_setting( const Setting &set ) 307 307 { 308 308 Array<EKFCh*> A; 309 UI::get( A, root, "models");309 UI::get( A, set, "models"); 310 310 311 311 set_parameters(A); … … 314 314 315 315 string options; 316 if( root.lookupValue( "options", options ))316 if(set.lookupValue( "options", options )) 317 317 set_options(options); 318 318 } 319 319 320 /*void MultiModel::to_setting( Setting & root ) const320 /*void MultiModel::to_setting( Setting &set ) const 321 321 { 322 Transport::to_setting( root );323 324 Setting &kilometers_setting = root.add("kilometers", Setting::TypeInt );322 Transport::to_setting( set ); 323 324 Setting &kilometers_setting = set.add("kilometers", Setting::TypeInt ); 325 325 kilometers_setting = kilometers; 326 326 327 UI::save( passengers, root, "passengers" );327 UI::save( passengers, set, "passengers" ); 328 328 }*/ 329 329