Fixed tabs and trailing whitespaces
[libdai.git] / src / exactinf.cpp
index 96ae3e8..9ae4834 100644 (file)
@@ -1,6 +1,7 @@
-/*  Copyright (C) 2006-2008  Joris Mooij  [j dot mooij at science dot ru dot nl]
-    Radboud University Nijmegen, The Netherlands
-    
+/*  Copyright (C) 2006-2008  Joris Mooij  [joris dot mooij at tuebingen dot mpg dot de]
+    Radboud University Nijmegen, The Netherlands /
+    Max Planck Institute for Biological Cybernetics, Germany
+
     This file is part of libDAI.
 
     libDAI is free software; you can redistribute it and/or modify
@@ -34,7 +35,7 @@ const char *ExactInf::Name = "EXACT";
 
 void ExactInf::setProperties( const PropertySet &opts ) {
     assert( opts.hasKey("verbose") );
-    
+
     props.verbose = opts.getStringAs<size_t>("verbose");
 }
 
@@ -46,7 +47,15 @@ PropertySet ExactInf::getProperties() const {
 }
 
 
-void ExactInf::create() {
+string ExactInf::printProperties() const {
+    stringstream s( stringstream::out );
+    s << "[";
+    s << "verbose=" << props.verbose << "]";
+    return s.str();
+}
+
+
+void ExactInf::construct() {
     // clear variable beliefs and reserve space
     _beliefsV.clear();
     _beliefsV.reserve( nrVars() );
@@ -71,13 +80,13 @@ void ExactInf::init() {
 
 double ExactInf::run() {
     if( props.verbose >= 1 )
-        cout << "Starting " << identify() << "...";
+        cerr << "Starting " << identify() << "...";
 
     Factor P;
     for( size_t I = 0; I < nrFactors(); I++ )
         P *= factor(I);
 
-    Real Z = P.totalSum();
+    Real Z = P.sum();
     _logZ = std::log(Z);
     for( size_t i = 0; i < nrVars(); i++ )
         _beliefsV[i] = P.marginal(var(i));
@@ -85,7 +94,7 @@ double ExactInf::run() {
         _beliefsF[I] = P.marginal(factor(I).vars());
 
     if( props.verbose >= 1 )
-        cout << "finished" << endl;
+        cerr << "finished" << endl;
 
     return 0.0;
 }
@@ -114,10 +123,8 @@ Factor ExactInf::belief( const VarSet &ns ) const {
 }
 
 
-string ExactInf::identify() const { 
-    stringstream result (stringstream::out);
-    result << Name << getProperties();
-    return result.str();
+string ExactInf::identify() const {
+    return string(Name) + printProperties();
 }