New git HEAD version
[libdai.git] / src / mf.cpp
index b9396cf..4c1d932 100644 (file)
@@ -1,14 +1,15 @@
 /*  This file is part of libDAI - http://www.libdai.org/
  *
- *  libDAI is licensed under the terms of the GNU General Public License version
- *  2, or (at your option) any later version. libDAI is distributed without any
- *  warranty. See the file COPYING for more details.
+ *  Copyright (c) 2006-2011, The libDAI authors. All rights reserved.
  *
- *  Copyright (C) 2006-2010  Joris Mooij  [joris dot mooij at libdai dot org]
- *  Copyright (C) 2006-2007  Radboud University Nijmegen, The Netherlands
+ *  Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
  */
 
 
+#include <dai/dai_config.h>
+#ifdef DAI_WITH_MF
+
+
 #include <iostream>
 #include <sstream>
 #include <map>
@@ -94,9 +95,9 @@ void MF::init() {
 
 Factor MF::calcNewBelief( size_t i ) {
     Factor result;
-    foreach( const Neighbor &I, nbV(i) ) {
+    bforeach( const Neighbor &I, nbV(i) ) {
         Factor belief_I_minus_i;
-        foreach( const Neighbor &j, nbF(I) ) // for all j in I \ i
+        bforeach( const Neighbor &j, nbF(I) ) // for all j in I \ i
             if( j != i )
                 belief_I_minus_i *= _beliefs[j];
         Factor f_I = factor(I);
@@ -131,7 +132,7 @@ Real MF::run() {
         random_shuffle( update_seq.begin(), update_seq.end(), rnd );
 
         maxDiff = -INFINITY;
-        foreach( const size_t &i, update_seq ) {
+        bforeach( const size_t &i, update_seq ) {
             Factor nb = calcNewBelief( i );
 
             if( nb.hasNaNs() ) {
@@ -201,7 +202,7 @@ Real MF::logZ() const {
         s -= beliefV(i).entropy();
     for( size_t I = 0; I < nrFactors(); I++ ) {
         Factor henk;
-        foreach( const Neighbor &j, nbF(I) )  // for all j in I
+        bforeach( const Neighbor &j, nbF(I) )  // for all j in I
             henk *= _beliefs[j];
         henk.normalize();
         Factor piet;
@@ -226,3 +227,6 @@ void MF::init( const VarSet &ns ) {
 
 
 } // end of namespace dai
+
+
+#endif