$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r71962 - sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4
From: mario.mulansky_at_[hidden]
Date: 2011-05-15 15:18:12
Author: mariomulansky
Date: 2011-05-15 15:18:12 EDT (Sun, 15 May 2011)
New Revision: 71962
URL: http://svn.boost.org/trac/boost/changeset/71962
Log:
changed std::tr1::array -> boost::array to be platform independent
removed reference in taylor.hpp to make it compile with msvc
Text files modified: 
   sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor.hpp                                 |    18 ++++++++++++------                      
   sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_lorenz_evol_adaptive_statistics.cpp |     4 ++--                                    
   sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_main.cpp                            |     2 +-                                      
   3 files changed, 15 insertions(+), 9 deletions(-)
Modified: sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor.hpp
==============================================================================
--- sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor.hpp	(original)
+++ sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor.hpp	2011-05-15 15:18:12 EDT (Sun, 15 May 2011)
@@ -10,7 +10,7 @@
 
 #include <ostream>
 #include <cmath>
-#include <tr1/array>
+#include <boost/array.hpp>
 
 #include <iostream>
 using namespace std;
@@ -82,7 +82,7 @@
         struct taylor_context
         {
                 typedef State state_type;
-		typedef std::tr1::array< state_type , MaxOrder > deriv_type;
+		typedef boost::array< state_type , MaxOrder > deriv_type;
 
                 size_t which;
                 const state_type &x;
@@ -363,7 +363,13 @@
                 void operator()( Index )
                 {
                         typedef typename fusion::result_of::at< System , Index >::type expr_type;
-			const expr_type &expr = boost::fusion::at< Index >( m_sys );
+			
+			/* Mario: changed to make it compile with msvc 9.0
+			 * error: invalid type: reference to reference
+			 */
+			//const expr_type &expr = boost::fusion::at< Index >( m_sys );
+			expr_type expr = boost::fusion::at< Index >( m_sys );
+			/* end changes */
 
                         double deriv = taylor_transform()( expr , 0.0 , m_data );
                         m_data.derivs[ m_data.which ][ Index::value ] = m_data.dt_fac / double( m_data.which + 1 ) * deriv;
@@ -371,7 +377,7 @@
         };
 
         template< class System , class State , size_t Order >
-	eval_derivs< System , State , Order > make_eval_derivs( System sys , const State &x , std::tr1::array< State , Order > &derivs , double &dt_fac , size_t i )
+	eval_derivs< System , State , Order > make_eval_derivs( System sys , const State &x , boost::array< State , Order > &derivs , double &dt_fac , size_t i )
         {
                 return eval_derivs< System , State , Order >( sys , x , derivs , dt_fac , i );
         }
@@ -388,9 +394,9 @@
         typedef value_type time_type;
         typedef unsigned short order_type;
 
-	typedef std::tr1::array< value_type , dim > state_type;
+	typedef boost::array< value_type , dim > state_type;
         typedef state_type deriv_type;
-	typedef std::tr1::array< state_type , order_value > derivs_type;
+	typedef boost::array< state_type , order_value > derivs_type;
 
         taylor( value_type rel_error = 1.0e-14 , value_type abs_error = 1.0e-14 )
         : m_derivs() , m_dt_fac( 1.0 ) , m_rel_error( rel_error ) , m_abs_error( abs_error ) { }
Modified: sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_lorenz_evol_adaptive_statistics.cpp
==============================================================================
--- sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_lorenz_evol_adaptive_statistics.cpp	(original)
+++ sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_lorenz_evol_adaptive_statistics.cpp	2011-05-15 15:18:12 EDT (Sun, 15 May 2011)
@@ -26,14 +26,14 @@
 #define tab "\t"
 
 template< typename T , size_t N >
-std::ostream& operator<<( std::ostream& out , const std::tr1::array< T , N > &x )
+std::ostream& operator<<( std::ostream& out , const boost::array< T , N > &x )
 {
         if( !x.empty() ) out << x[0];
         for( size_t i=1 ; i<x.size() ; ++i ) out << "\t" << x[i];
         return out;
 }
 
-typedef std::tr1::array< double , 3 > state_type;
+typedef boost::array< double , 3 > state_type;
 
 typedef boost::numeric::odeint::explicit_error_rk54_ck< state_type > rk54_type;
 
Modified: sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_main.cpp
==============================================================================
--- sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_main.cpp	(original)
+++ sandbox/odeint/branches/karsten/libs/numeric/odeint/ideas/taylor/taylor_v4/taylor_main.cpp	2011-05-15 15:18:12 EDT (Sun, 15 May 2011)
@@ -13,7 +13,7 @@
 #include <boost/fusion/include/make_vector.hpp>
 
 template< typename T , size_t N >
-std::ostream& operator<<( std::ostream& out , const std::tr1::array< T , N > &x )
+std::ostream& operator<<( std::ostream& out , const boost::array< T , N > &x )
 {
         if( !x.empty() ) out << x[0];
         for( size_t i=1 ; i<x.size() ; ++i ) out << "\t" << x[i];