diff --git a/src/blockforest/BlockDataHandling.h b/src/blockforest/BlockDataHandling.h index a9e612e84560bdf5593ef00d979c13d8af5bf5b0..c947b3e032de0a01bf727a30e86d81ff23c035f5 100644 --- a/src/blockforest/BlockDataHandling.h +++ b/src/blockforest/BlockDataHandling.h @@ -214,7 +214,7 @@ public: template< typename T > BlockDataHandlingAdder & operator<<( const domain_decomposition::BlockDataCreator<T> & bdc ) { - auto downcast = boost::dynamic_pointer_cast< blockforest::BlockDataHandling<T> >( bdc.dataHandling_ ); + auto downcast = dynamic_pointer_cast< blockforest::BlockDataHandling<T> >( bdc.dataHandling_ ); if( downcast ) { dataHandling_.add( make_shared< blockforest::internal::BlockDataHandlingHelper<T> >( downcast ), bdc.requiredSelectors_, diff --git a/src/blockforest/BlockForest.cpp b/src/blockforest/BlockForest.cpp index 8d99f0abe7b0c015b35e0d855221979471619b64..e6c19cbc1fe9341bc297f73606a926549659355a 100644 --- a/src/blockforest/BlockForest.cpp +++ b/src/blockforest/BlockForest.cpp @@ -2277,7 +2277,7 @@ void BlockForest::update( PhantomBlockForest & phantomForest ) auto blockDataHandlingWrapper = dataItem->getDataHandling( block, targetState[0] ); if( blockDataHandlingWrapper ) { - auto downcastBlockDataHandlingWrapper = boost::dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); + auto downcastBlockDataHandlingWrapper = dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); if( !downcastBlockDataHandlingWrapper ) { WALBERLA_ABORT( "Dynamic data structure refresh failed!\n" @@ -2305,7 +2305,7 @@ void BlockForest::update( PhantomBlockForest & phantomForest ) auto blockDataHandlingWrapper = dataItem->getDataHandling( block, targetState[c] ); if( blockDataHandlingWrapper ) { - auto downcastBlockDataHandlingWrapper = boost::dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); + auto downcastBlockDataHandlingWrapper = dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); if( !downcastBlockDataHandlingWrapper ) { WALBERLA_ABORT( "Dynamic data structure refresh failed!\n" @@ -2651,7 +2651,7 @@ void BlockForest::update( PhantomBlockForest & phantomForest ) auto blockDataHandlingWrapper = dataItem->getDataHandling( block ); if( blockDataHandlingWrapper ) { - auto downcastBlockDataHandlingWrapper = boost::dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); + auto downcastBlockDataHandlingWrapper = dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); if( !downcastBlockDataHandlingWrapper ) { WALBERLA_ABORT( "Dynamic data structure refresh failed!\n" @@ -2671,7 +2671,7 @@ void BlockForest::update( PhantomBlockForest & phantomForest ) auto blockDataHandlingWrapper = dataItem->getDataHandling( block, buffers[0].first ); if( blockDataHandlingWrapper ) { - auto downcastBlockDataHandlingWrapper = boost::dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); + auto downcastBlockDataHandlingWrapper = dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); if( !downcastBlockDataHandlingWrapper ) { WALBERLA_ABORT( "Dynamic data structure refresh failed!\n" @@ -2699,7 +2699,7 @@ void BlockForest::update( PhantomBlockForest & phantomForest ) auto blockDataHandlingWrapper = dataItem->getDataHandling( block ); if( blockDataHandlingWrapper ) { - auto downcastBlockDataHandlingWrapper = boost::dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); + auto downcastBlockDataHandlingWrapper = dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); if( !downcastBlockDataHandlingWrapper ) { WALBERLA_ABORT( "Dynamic data structure refresh failed!\n" @@ -2720,7 +2720,7 @@ void BlockForest::update( PhantomBlockForest & phantomForest ) auto blockDataHandlingWrapper = dataItem->getDataHandling( block, buffers[c].first ); if( blockDataHandlingWrapper ) { - auto downcastBlockDataHandlingWrapper = boost::dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); + auto downcastBlockDataHandlingWrapper = dynamic_pointer_cast< blockforest::internal::BlockDataHandlingWrapper >( blockDataHandlingWrapper ); if( !downcastBlockDataHandlingWrapper ) { WALBERLA_ABORT( "Dynamic data structure refresh failed!\n" diff --git a/src/blockforest/BlockForest.h b/src/blockforest/BlockForest.h index 011dbf371076aaa42d6aa49f7acf83acbcad2546..af1a1f8aff95d4463dc3e152f9536d59f450250c 100644 --- a/src/blockforest/BlockForest.h +++ b/src/blockforest/BlockForest.h @@ -856,7 +856,7 @@ inline BlockDataID BlockForest::addBlockData( const shared_ptr< T > & dataHandli { //static_assert( boost::is_base_of< BlockDataHandling<typename T::value_type>, T >::value ); - auto downcast = boost::dynamic_pointer_cast< blockforest::BlockDataHandling<typename T::value_type> >( dataHandling ); + auto downcast = dynamic_pointer_cast< blockforest::BlockDataHandling<typename T::value_type> >( dataHandling ); if( downcast ) { @@ -880,7 +880,7 @@ template< typename T > inline BlockDataID BlockForest::loadBlockData( const std::string & file, const shared_ptr< T > & dataHandling, const std::string & identifier, const Set<SUID> & requiredSelectors, const Set<SUID> & incompatibleSelectors ) { - auto downcast = boost::dynamic_pointer_cast< blockforest::BlockDataHandling<typename T::value_type> >( dataHandling ); + auto downcast = dynamic_pointer_cast< blockforest::BlockDataHandling<typename T::value_type> >( dataHandling ); if( downcast ) { diff --git a/src/blockforest/BlockID.h b/src/blockforest/BlockID.h index b9691c74490ac52663b07f65816002fc2c48354d..dddb36d96c9659d9e7e8d6460c5bfd939726fe78 100644 --- a/src/blockforest/BlockID.h +++ b/src/blockforest/BlockID.h @@ -93,8 +93,8 @@ private: static const uint_t SHIFT = UINT_BITS - 3; - BOOST_STATIC_ASSERT( UINT_BITS > 31 ); - BOOST_STATIC_ASSERT( !(UINT_BITS & (UINT_BITS - 1)) ); // power of two + WALBERLA_STATIC_ASSERT( UINT_BITS > 31 ); + WALBERLA_STATIC_ASSERT( !(UINT_BITS & (UINT_BITS - 1)) ); // power of two }; // class BlockID diff --git a/src/blockforest/Types.h b/src/blockforest/Types.h index 0624414b23b529e47b23e6c56a941afa0b816eb7..76ab3911327cb28608cb6c89b2a8e964a6791803 100644 --- a/src/blockforest/Types.h +++ b/src/blockforest/Types.h @@ -23,7 +23,6 @@ #include "core/DataTypes.h" -#include <boost/static_assert.hpp> #include <limits> @@ -37,8 +36,8 @@ namespace blockforest { typedef real_t workload_t; typedef real_t memory_t; -BOOST_STATIC_ASSERT( sizeof( workload_t ) == 4 || sizeof( workload_t ) == 8 ); -BOOST_STATIC_ASSERT( sizeof( memory_t ) == 4 || sizeof( memory_t ) == 8 ); +WALBERLA_STATIC_ASSERT( sizeof( workload_t ) == 4 || sizeof( workload_t ) == 8 ); +WALBERLA_STATIC_ASSERT( sizeof( memory_t ) == 4 || sizeof( memory_t ) == 8 ); template< typename T > inline workload_t workload_c( T t ) { return numeric_cast< workload_t >(t); } ///< cast to type workload_t using "workload_c(x)" template< typename T > inline memory_t memory_c ( T t ) { return numeric_cast< memory_t >(t); } ///< cast to type memory_t using "memory_c(x)" diff --git a/src/core/DataTypes.h b/src/core/DataTypes.h index 765636c0626c6bd62bde1a57d94f86c0ed8f0bba..b0442f52466f8fcbe13ef68656a9b99ad449cbb2 100644 --- a/src/core/DataTypes.h +++ b/src/core/DataTypes.h @@ -23,13 +23,10 @@ #include "waLBerlaDefinitions.h" -#include <boost/cstdint.hpp> -#include <boost/make_shared.hpp> +#include <cstdint> #include <boost/numeric/conversion/cast.hpp> -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> -#include <boost/static_assert.hpp> -#include "boost/type_traits/integral_constant.hpp" +#include <memory> +#include <type_traits> #include <boost/units/detail/utility.hpp> #include <cmath> @@ -39,17 +36,19 @@ namespace walberla { +#define WALBERLA_STATIC_ASSERT(x) static_assert(x, "Assertion failed") -template <typename> struct never_true : boost::false_type {}; + +template <typename> struct never_true : std::false_type {}; // shared ptr -using boost::shared_ptr; -using boost::weak_ptr; -using boost::make_shared; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::make_shared; +using std::dynamic_pointer_cast; // functions, use this when "function" namespace is no longer needed //using std::function; @@ -69,10 +68,10 @@ inline S numeric_cast( T t ) { // fixed size signed integral types -typedef boost::int8_t int8_t; ///< 8 bit signed integer -typedef boost::int16_t int16_t; ///< 16 bit signed integer -typedef boost::int32_t int32_t; ///< 32 bit signed integer -typedef boost::int64_t int64_t; ///< 64 bit signed integer +typedef std::int8_t int8_t; ///< 8 bit signed integer +typedef std::int16_t int16_t; ///< 16 bit signed integer +typedef std::int32_t int32_t; ///< 32 bit signed integer +typedef std::int64_t int64_t; ///< 64 bit signed integer template< typename T > inline int8_t int8_c( T t ) { return numeric_cast< int8_t >(t); } ///< cast to type int8_t using "int8_c(x)" template< typename T > inline int16_t int16_c( T t ) { return numeric_cast< int16_t >(t); } ///< cast to type int16_t using "int16_c(x)" @@ -83,10 +82,10 @@ template< typename T > inline int64_t int64_c( T t ) { return numeric_cast< int6 // fixed size unsigned integral types -typedef boost::uint8_t uint8_t; ///< 8 bit unsigned integer -typedef boost::uint16_t uint16_t; ///< 16 bit unsigned integer -typedef boost::uint32_t uint32_t; ///< 32 bit unsigned integer -typedef boost::uint64_t uint64_t; ///< 64 bit unsigned integer +typedef std::uint8_t uint8_t; ///< 8 bit unsigned integer +typedef std::uint16_t uint16_t; ///< 16 bit unsigned integer +typedef std::uint32_t uint32_t; ///< 32 bit unsigned integer +typedef std::uint64_t uint64_t; ///< 64 bit unsigned integer typedef uint8_t byte_t; typedef uint64_t id_t; //sid datatype for pe @@ -156,7 +155,7 @@ static const uint_t UINT_BITS_LD = int_ld< std::numeric_limits< uint_t >::digits typedef int cell_idx_t; //typedef int64_t cell_idx_t; -BOOST_STATIC_ASSERT( std::numeric_limits<cell_idx_t>::is_specialized && +WALBERLA_STATIC_ASSERT( std::numeric_limits<cell_idx_t>::is_specialized && std::numeric_limits<cell_idx_t>::is_integer && std::numeric_limits<cell_idx_t>::is_signed ); diff --git a/src/core/cell/CellInterval.h b/src/core/cell/CellInterval.h index 1f4737337e942f340001c4363e613485624cf2e8..10dfb0d9b1bbc375aeac80e08118b61af8c8cfd4 100644 --- a/src/core/cell/CellInterval.h +++ b/src/core/cell/CellInterval.h @@ -29,7 +29,6 @@ #include "core/mpi/RecvBuffer.h" #include "core/mpi/SendBuffer.h" -#include <boost/static_assert.hpp> #include <algorithm> #include <iterator> diff --git a/src/core/debug/CheckFunctions.h b/src/core/debug/CheckFunctions.h index 54efea20b30ba2abc04105df96729d00d900eb53..84130a8d1e209cf928f72a75b0cf99afcbf07e89 100644 --- a/src/core/debug/CheckFunctions.h +++ b/src/core/debug/CheckFunctions.h @@ -29,7 +29,6 @@ #include "core/VectorTrait.h" //#include <boost/math/special_functions/next.hpp> -#include <boost/static_assert.hpp> #include <boost/type_traits/is_arithmetic.hpp> #include <boost/type_traits/is_floating_point.hpp> #include <boost/type_traits/has_left_shift.hpp> diff --git a/src/core/debug/CheckFunctions.impl.h b/src/core/debug/CheckFunctions.impl.h index fb67dd269fcd357eb986bd7e32b283e23c82ccae..fac44221d516a0a8be73690787eecff21a672e88 100644 --- a/src/core/debug/CheckFunctions.impl.h +++ b/src/core/debug/CheckFunctions.impl.h @@ -20,6 +20,7 @@ //====================================================================================================================== +#include <boost/type_traits/integral_constant.hpp> /// \cond internal diff --git a/src/core/math/Matrix2.h b/src/core/math/Matrix2.h index db66c6e2cc45be63c6798537dd8e1d6f6db04d56..87b41821e01dc77efd2e2daffc82382ada132980 100644 --- a/src/core/math/Matrix2.h +++ b/src/core/math/Matrix2.h @@ -28,7 +28,6 @@ #include "core/mpi/RecvBuffer.h" #include "core/mpi/SendBuffer.h" -#include <boost/static_assert.hpp> #include <algorithm> #include <cmath> #include <iostream> @@ -725,9 +724,9 @@ inline const Matrix2<Type> Matrix2<Type>::getTranspose() const template< typename Type > inline Matrix2<Type>& Matrix2<Type>::invert() { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); Type det = getDeterminant(); @@ -754,9 +753,9 @@ inline Matrix2<Type>& Matrix2<Type>::invert() template< typename Type > inline const Matrix2<Type> Matrix2<Type>::getInverse() const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); Type det = getDeterminant(); @@ -898,7 +897,7 @@ inline bool isnan( const Matrix2<Type>& m ) template< typename Type > inline const Matrix2<Type> abs( const Matrix2<Type>& m ) { - BOOST_STATIC_ASSERT( std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( std::numeric_limits<Type>::is_integer ); return Matrix2<Type>( std::abs(m[0]), std::abs(m[1]), std::abs(m[2]), std::abs(m[3]) ); } @@ -919,7 +918,7 @@ inline const Matrix2<Type> abs( const Matrix2<Type>& m ) template< typename Type > inline const Matrix2<Type> fabs( const Matrix2<Type>& m ) { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); return Matrix2<Type>( std::fabs(m[0]), std::fabs(m[1]), std::fabs(m[2]), std::fabs(m[3]) ); } diff --git a/src/core/math/Matrix3.h b/src/core/math/Matrix3.h index 8706833ae539070102d9258ece6c8faecf1016e1..42a36dc9e2e95727dc0bb66117124c33162c31f8 100644 --- a/src/core/math/Matrix3.h +++ b/src/core/math/Matrix3.h @@ -32,7 +32,6 @@ #include "core/mpi/RecvBuffer.h" #include "core/mpi/SendBuffer.h" -#include <boost/static_assert.hpp> #include <boost/type_traits/is_arithmetic.hpp> #include <boost/utility/enable_if.hpp> @@ -370,9 +369,9 @@ template< typename Type > template< typename Axis, typename Angle > Matrix3<Type>::Matrix3( Vector3<Axis> axis, Angle angle ) { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Axis>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Angle>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Axis>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Angle>::is_integer ); const Angle sina( std::sin(angle) ); const Angle cosa( std::cos(angle) ); @@ -1007,9 +1006,9 @@ inline const Matrix3<Type> Matrix3<Type>::getTranspose() const template< typename Type > inline Matrix3<Type>& Matrix3<Type>::invert() { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); Type det = v_[0] * ( ( v_[4] * v_[8] ) - ( v_[7] * v_[5] ) ) + v_[1] * ( ( v_[5] * v_[6] ) - ( v_[8] * v_[3] ) ) + @@ -1046,7 +1045,7 @@ inline Matrix3<Type>& Matrix3<Type>::invert() template< typename Type > inline const Matrix3<Type> Matrix3<Type>::getInverse() const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); Type det = v_[0] * ( ( v_[4] * v_[8] ) - ( v_[7] * v_[5] ) ) + v_[1] * ( ( v_[5] * v_[6] ) - ( v_[8] * v_[3] ) ) + @@ -1101,8 +1100,8 @@ template< typename Type > template< typename Other > inline const Matrix3<HIGH> Matrix3<Type>::rotate( const Matrix3<Other>& m ) const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Other>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Other>::is_integer ); //--Multiplication in two steps (number of FLOP = 90, 1 additional temporary matrix)------------ @@ -1160,8 +1159,8 @@ template< typename Type > template< typename Other > inline const Matrix3<HIGH> Matrix3<Type>::diagRotate( const Matrix3<Other>& m ) const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Other>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Other>::is_integer ); // Precalculating tmp = m * R(-1) const Matrix3<HIGH> tmp( m.v_[0]*v_[0], m.v_[0]*v_[3], m.v_[0]*v_[6], @@ -1249,7 +1248,7 @@ inline bool Matrix3<Type>::isZero() const template< typename Type > inline const Matrix3<Type> Matrix3<Type>::getCholesky() const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); Matrix3 tmp( Type(0) ); @@ -1292,8 +1291,8 @@ template< typename Type > template< typename Other > inline const Vector3<HIGH> Matrix3<Type>::solve( const Vector3<Other> &rhs ) const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); - BOOST_STATIC_ASSERT( !std::numeric_limits<Other>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Other>::is_integer ); Vector3<HIGH> tmp1, tmp2; HIGH sum; @@ -1355,7 +1354,7 @@ inline Type Matrix3<Type>::trace() const template< typename Type > inline const Vector3<Type> Matrix3<Type>::getEulerAnglesXYZ() const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); const Type cy( std::sqrt( v_[0]*v_[0] + v_[3]*v_[3] ) ); @@ -1382,7 +1381,7 @@ inline const Vector3<Type> Matrix3<Type>::getEulerAnglesXYZ() const template< typename Type > const Vector3<Type> Matrix3<Type>::getEulerAngles( EulerRotation order ) const { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); static const uint_t eulSafe[4] = { 0, 1, 2, 0 }; static const uint_t eulNext[4] = { 1, 2, 0, 1 }; @@ -1663,7 +1662,7 @@ inline bool isnan( const Matrix3<Type>& m ) template< typename Type > inline const Matrix3<Type> abs( const Matrix3<Type>& m ) { - BOOST_STATIC_ASSERT( std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( std::numeric_limits<Type>::is_integer ); return Matrix3<Type>( std::abs(m[0]), std::abs(m[1]), std::abs(m[2]), std::abs(m[3]), std::abs(m[4]), std::abs(m[5]), std::abs(m[6]), std::abs(m[7]), std::abs(m[8]) ); @@ -1685,7 +1684,7 @@ inline const Matrix3<Type> abs( const Matrix3<Type>& m ) template< typename Type > inline const Matrix3<Type> fabs( const Matrix3<Type>& m ) { - BOOST_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); + WALBERLA_STATIC_ASSERT( !std::numeric_limits<Type>::is_integer ); return Matrix3<Type>( std::fabs(m[0]), std::fabs(m[1]), std::fabs(m[2]), std::fabs(m[3]), std::fabs(m[4]), std::fabs(m[5]), std::fabs(m[6]), std::fabs(m[7]), std::fabs(m[8]) ); diff --git a/src/core/math/PhysicalCheck.cpp b/src/core/math/PhysicalCheck.cpp index 43c8e5030a5e0266f12701acab71fd9d11fd7255..321890603a9e7d0306858a94e489dad95b02cf4d 100644 --- a/src/core/math/PhysicalCheck.cpp +++ b/src/core/math/PhysicalCheck.cpp @@ -231,7 +231,7 @@ namespace math { constraints_.push_back( *i ); } - void PhysicalCheck::completeConfig( const boost::shared_ptr<Config>& config ) + void PhysicalCheck::completeConfig( const shared_ptr<Config>& config ) { auto globalBlock = config->getWritableGlobalBlock(); diff --git a/src/core/math/PhysicalCheck.h b/src/core/math/PhysicalCheck.h index d3ae91ee9848425fef6ecc063e3a3c254ebcf897..857b292f404f96b2bec8fed07ed036963afefea4 100644 --- a/src/core/math/PhysicalCheck.h +++ b/src/core/math/PhysicalCheck.h @@ -94,7 +94,7 @@ namespace math { void addEquations ( const std::vector<std::string>& equations ); void addUnitParameterRelations ( const std::map< std::string, std::string >& unitParameterRelations ); void addConstraints ( const std::vector<std::string>& constraints ); - void completeConfig ( const boost::shared_ptr<Config>& config ); + void completeConfig ( const shared_ptr<Config>& config ); //@} //**************************************************************************************************************** diff --git a/src/core/math/Quaternion.h b/src/core/math/Quaternion.h index ddf90343008c172b186bfa2e07157a2c71ca1b77..5fd24f91d848346a0396ece30afc29b3b39b229c 100644 --- a/src/core/math/Quaternion.h +++ b/src/core/math/Quaternion.h @@ -663,7 +663,7 @@ inline void Quaternion<Type>::swap( Quaternion& q ) /* throw() */ template< typename Type > inline const Vector3<Type> Quaternion<Type>::getEulerAnglesXYZ() const { - BOOST_STATIC_ASSERT(!std::numeric_limits<Type>::is_integer); + WALBERLA_STATIC_ASSERT(!std::numeric_limits<Type>::is_integer); Vector3<Type> eulerAngles; diff --git a/src/core/math/Utility.h b/src/core/math/Utility.h index f53d2c47c86d94b38592513bc6083e3eef5e14bb..198cd4c73dd9e311e3f8fa2766d2a827f9eb0dd2 100644 --- a/src/core/math/Utility.h +++ b/src/core/math/Utility.h @@ -26,7 +26,6 @@ #include "core/DataTypes.h" #include <boost/math/constants/constants.hpp> -#include <boost/static_assert.hpp> #include <cmath> #include <cstddef> #include <limits> @@ -100,7 +99,7 @@ inline real_t round( real_t a ); template< typename T > inline const T sign( T a ) { - BOOST_STATIC_ASSERT( std::numeric_limits<T>::is_signed ); + WALBERLA_STATIC_ASSERT( std::numeric_limits<T>::is_signed ); return ( a < T(0) )?( T(-1) ):( T(1) ); } //********************************************************************************************************************** diff --git a/src/core/math/Vector2.h b/src/core/math/Vector2.h index 247f2a026a83e68365ff58be1864b0713b30c59d..1ad6f9cab05d9eda80a0684d736e5921ba26b5d0 100644 --- a/src/core/math/Vector2.h +++ b/src/core/math/Vector2.h @@ -38,7 +38,6 @@ #include "core/mpi/SendBuffer.h" #include <boost/functional/hash.hpp> -#include <boost/static_assert.hpp> #include <boost/type_traits/is_floating_point.hpp> #include <boost/type_traits/is_fundamental.hpp> #include <boost/type_traits/is_same.hpp> diff --git a/src/core/math/Vector3.h b/src/core/math/Vector3.h index 38fbf7ef0c40e0d3111bc7214bf21d6d8f05b826..f5b1ea819cff09f5813a162574ee318ab8bd7fa7 100644 --- a/src/core/math/Vector3.h +++ b/src/core/math/Vector3.h @@ -39,7 +39,6 @@ #include "core/debug/CheckFunctions.h" #include <boost/functional/hash.hpp> -#include <boost/static_assert.hpp> #include <boost/type_traits.hpp> #include <boost/type_traits/is_floating_point.hpp> #include <boost/type_traits/is_fundamental.hpp> diff --git a/src/core/math/equation_system/EquationSystem.h b/src/core/math/equation_system/EquationSystem.h index 5ba6d2db2f24c0c7c0fe09aae48fe8236d071025..56a15bf8096b58fbd26dc007d7fb6522c4232166 100644 --- a/src/core/math/equation_system/EquationSystem.h +++ b/src/core/math/equation_system/EquationSystem.h @@ -121,7 +121,7 @@ namespace math { }; - typedef boost::shared_ptr< EquationSystem > EquationSystemPtr; + typedef shared_ptr< EquationSystem > EquationSystemPtr; } // namespace math } // namespace walberla diff --git a/src/core/math/equation_system/FwdEquation.h b/src/core/math/equation_system/FwdEquation.h index 587eceb7960558b5d69f4e300c74edbbb363c5a9..37787456b7eb1daa3ab131cb30112bd9804e483e 100644 --- a/src/core/math/equation_system/FwdEquation.h +++ b/src/core/math/equation_system/FwdEquation.h @@ -21,7 +21,7 @@ #pragma once -#include <boost/shared_ptr.hpp> +#include <memory> namespace walberla { @@ -41,13 +41,13 @@ namespace math { }; class Node; - typedef boost::shared_ptr<Node> NodePtr; + typedef std::shared_ptr<Node> NodePtr; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // EQUATION ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// class Equation; - typedef boost::shared_ptr< Equation > EquationPtr; + typedef std::shared_ptr< Equation > EquationPtr; } // namespace math } // namespace walberla diff --git a/src/core/math/equation_system/FwdOperator.h b/src/core/math/equation_system/FwdOperator.h index 1b54a2dbeddc74a879d102edd7787626842a4e82..2df1ae9abda4bed416e52223400111758ea4e4fa 100644 --- a/src/core/math/equation_system/FwdOperator.h +++ b/src/core/math/equation_system/FwdOperator.h @@ -21,7 +21,6 @@ #pragma once -#include <boost/shared_ptr.hpp> #include <map> diff --git a/src/core/math/equation_system/FwdVariable.h b/src/core/math/equation_system/FwdVariable.h index cbd8c86f709fa590016071e4cad036558d947af8..76715f973efe5b97d47fe7762abc8747f14e760b 100644 --- a/src/core/math/equation_system/FwdVariable.h +++ b/src/core/math/equation_system/FwdVariable.h @@ -21,7 +21,7 @@ #pragma once -#include <boost/shared_ptr.hpp> +#include <memory> #include <map> #include <string> @@ -33,7 +33,7 @@ namespace math { class Var; - typedef boost::shared_ptr<Var> VarPtr; + typedef std::shared_ptr<Var> VarPtr; typedef std::map<std::string, VarPtr> VarMap; typedef std::map<std::string, VarPtr>::const_iterator VarMapIt; diff --git a/src/core/mpi/RecvBuffer.h b/src/core/mpi/RecvBuffer.h index 5015f9bf52c8373cf70c0eb72286027cd5498971..3caa764b7bfc9a2559d78204cc10bc2e8c33c6fb 100644 --- a/src/core/mpi/RecvBuffer.h +++ b/src/core/mpi/RecvBuffer.h @@ -554,10 +554,10 @@ template< typename T > // Element type template< typename V > // Type of the built-in data value inline void GenericRecvBuffer<T>::peek( V& value ) const { - BOOST_STATIC_ASSERT( boost::is_arithmetic<V>::value ); + WALBERLA_STATIC_ASSERT( boost::is_arithmetic<V>::value ); - BOOST_STATIC_ASSERT( sizeof(V) > sizeof(T) ); - BOOST_STATIC_ASSERT( sizeof(V) % sizeof(T) == 0); + WALBERLA_STATIC_ASSERT( sizeof(V) > sizeof(T) ); + WALBERLA_STATIC_ASSERT( sizeof(V) % sizeof(T) == 0); // Checking the validity of the read operation WALBERLA_ASSERT_LESS_EQUAL( cur_ + BUFFER_DEBUG_OVERHEAD + sizeof(V)/sizeof(T), end_); diff --git a/src/core/uid/UIDGenerators.h b/src/core/uid/UIDGenerators.h index 96dc6443eba50168b2acba8adf9b1c613cc03101..d9c254d93986340ed079761a2951119e1d7d29c4 100644 --- a/src/core/uid/UIDGenerators.h +++ b/src/core/uid/UIDGenerators.h @@ -24,8 +24,7 @@ #include "core/debug/Debug.h" -#include <boost/cstdint.hpp> -#include <boost/static_assert.hpp> +#include <cstdint> #include <limits> @@ -106,7 +105,7 @@ public: static const char* getType() { static const char* const type = "index generator"; return type; } - BOOST_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && + WALBERLA_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && !std::numeric_limits<UINT>::is_signed ); }; @@ -142,7 +141,7 @@ public: static const char* getType() { static const char* const type = "standard generator"; return type; } - BOOST_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && + WALBERLA_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && !std::numeric_limits<UINT>::is_signed ); }; @@ -242,7 +241,7 @@ public: static const char* getType() { static const char* const type = "bit generator"; return type; } - BOOST_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && + WALBERLA_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && !std::numeric_limits<UINT>::is_signed ); }; @@ -281,7 +280,7 @@ public: static const char* getType() { static const char* const type = "singleton generator"; return type; } - BOOST_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && + WALBERLA_STATIC_ASSERT( std::numeric_limits<UINT>::is_specialized && std::numeric_limits<UINT>::is_integer && !std::numeric_limits<UINT>::is_signed ); }; diff --git a/src/field/Field.h b/src/field/Field.h index b6e517ec3d1f774c2c372757a2423ced83e84ec5..079e8d7fe18408ce2f19e4ea7ac3d0cfd2f9914f 100644 --- a/src/field/Field.h +++ b/src/field/Field.h @@ -37,7 +37,6 @@ #include "iterators/FieldPointer.h" #include <boost/function.hpp> -#include <boost/static_assert.hpp> #include <memory> #include <vector> diff --git a/src/field/FlagField.h b/src/field/FlagField.h index 4472323ae4e149c11bf3537a603f7b3a35804817..2785dd199fac3964a2ae835c3bf7c15299ff213a 100644 --- a/src/field/FlagField.h +++ b/src/field/FlagField.h @@ -32,7 +32,6 @@ #include "core/math/Uint.h" #include <boost/array.hpp> -#include <boost/static_assert.hpp> #include <boost/type_traits/is_same.hpp> #include <iostream> diff --git a/src/field/allocation/FieldAllocator.h b/src/field/allocation/FieldAllocator.h index 78d149fc3ade6b3c26dcb8c08edbf8c100b27d3e..5be0ecf4b0dbd2b5e292d446dd13d62aae9aca23 100644 --- a/src/field/allocation/FieldAllocator.h +++ b/src/field/allocation/FieldAllocator.h @@ -26,7 +26,6 @@ #include "core/debug/Debug.h" #include "field/CMakeDefs.h" -#include <boost/static_assert.hpp> #include <map> #include <new> @@ -289,8 +288,8 @@ namespace field { aligned_free(values); } - BOOST_STATIC_ASSERT_MSG(alignment > 0, "Use StdFieldAlloc"); - BOOST_STATIC_ASSERT_MSG(!(alignment & (alignment - 1)) , "Alignment has to be power of 2"); + static_assert(alignment > 0, "Use StdFieldAlloc"); + static_assert(!(alignment & (alignment - 1)) , "Alignment has to be power of 2"); private: /// Nr of elements per allocated pointer has to be stored to call the destructor on each element diff --git a/src/field/vtk/VTKWriter.h b/src/field/vtk/VTKWriter.h index fabb4d71454356a3ec213b64a3f30f19e93c33c7..c83033fe81a06a54c7a0874ceb8581fc07b6f353 100644 --- a/src/field/vtk/VTKWriter.h +++ b/src/field/vtk/VTKWriter.h @@ -169,7 +169,7 @@ inline vtk::VTKOutput::Write createVTKOutput ( const ConstBlockDataID & fieldId auto vtkOutput = vtk::createVTKOutput_BlockData( blocks, identifier, writeFrequency, ghostLayers, forcePVTU, baseFolder, executionFolder, continuousNumbering, binary, littleEndian, useMPIIO, initialExecutionCount ); - vtkOutput->addCellDataWriter( boost::make_shared< VTKWriter< Field_T,OutputType > >( fieldId, identifier ) ); + vtkOutput->addCellDataWriter( make_shared< VTKWriter< Field_T,OutputType > >( fieldId, identifier ) ); return writeFiles( vtkOutput, true, simultaneousIOOperations, requiredStates, incompatibleStates ); } @@ -222,7 +222,7 @@ inline vtk::VTKOutput::Write createScalingVTKOutput( const ConstBlockDataID & fi auto vtkOutput = vtk::createVTKOutput_BlockData( blocks, identifier, writeFrequency, ghostLayers, forcePVTU, baseFolder, executionFolder, continuousNumbering, binary, littleEndian, useMPIIO, initialExecutionCount ); - auto writer = boost::make_shared< VTKWriter< Field_T,OutputType > >( fieldId, identifier ); + auto writer = make_shared< VTKWriter< Field_T,OutputType > >( fieldId, identifier ); vtkOutput->addCellDataWriter( vtk::makeBlockCellDataWriterScalingAdapter(identifier, writer, factor) ); return writeFiles( vtkOutput, true, simultaneousIOOperations, requiredStates, incompatibleStates ); diff --git a/src/lbm/boundary/VelocityBoundary.h b/src/lbm/boundary/VelocityBoundary.h index 383cd41bb2d4832dbd51276a56cadc1610ab7730..8b470021b3575e755894f49397ff9cc0ddb945c3 100644 --- a/src/lbm/boundary/VelocityBoundary.h +++ b/src/lbm/boundary/VelocityBoundary.h @@ -112,7 +112,7 @@ public: inline void treatDirection( const cell_idx_t x, const cell_idx_t y, const cell_idx_t z, const stencil::Direction dir, const cell_idx_t nx, const cell_idx_t ny, const cell_idx_t nz, const flag_t mask ); - inline const std::vector<real_t> & getValue( const cell_idx_t x, cell_idx_t y, cell_idx_t z ) const { return vel_->get(x,y,z); } + inline const std::vector<real_t> & getValue( const cell_idx_t x, cell_idx_t y, cell_idx_t z ) const { return *(vel_->get(x,y,z)); } private: diff --git a/src/lbm/srt/SplitPureSweep.impl.h b/src/lbm/srt/SplitPureSweep.impl.h index 975e06eb7ebc65af827fbb196d168bbd29381da9..d545a9d1269be9cbd48833d610a37f12b91f8e3c 100644 --- a/src/lbm/srt/SplitPureSweep.impl.h +++ b/src/lbm/srt/SplitPureSweep.impl.h @@ -133,11 +133,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -489,11 +489,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx ) { @@ -833,13 +833,13 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT rho = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT rho = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -1191,13 +1191,13 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT rho = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT rho = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx ) { diff --git a/src/lbm/srt/SplitSweep.impl.h b/src/lbm/srt/SplitSweep.impl.h index 30d16a68f9ba9fb765f4f908bb0f1ba36edb666e..fca8be64fe097069ea8f8892177e27d0cb0691e8 100644 --- a/src/lbm/srt/SplitSweep.impl.h +++ b/src/lbm/srt/SplitSweep.impl.h @@ -127,13 +127,13 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -553,13 +553,13 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { @@ -967,15 +967,15 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT rho = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT rho = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -1398,15 +1398,15 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT rho = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT rho = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT dir_indep_trm = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { diff --git a/src/lbm/srt/bluegeneq/SplitPureSweep.impl.h b/src/lbm/srt/bluegeneq/SplitPureSweep.impl.h index 501bf1ed06b070f68caaa8a2fd158e98a86d2e51..865e3dfa7dd579c1518094c9214b8139418841e9 100644 --- a/src/lbm/srt/bluegeneq/SplitPureSweep.impl.h +++ b/src/lbm/srt/bluegeneq/SplitPureSweep.impl.h @@ -145,11 +145,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* dir_indep_trm = new real_t[ xSize ]; + real_t* dir_indep_trm = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -634,11 +634,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* dir_indep_trm = new real_t[ xSize ]; + real_t* dir_indep_trm = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { @@ -1038,13 +1038,13 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* rho = new real_t[ xSize ]; + real_t* rho = new real_t[ uint_c(xSize) ]; - real_t* dir_indep_trm = new real_t[ xSize ]; + real_t* dir_indep_trm = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -1529,13 +1529,13 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* rho = new real_t[ xSize ]; + real_t* rho = new real_t[ uint_c(xSize) ]; - real_t* dir_indep_trm = new real_t[ xSize ]; + real_t* dir_indep_trm = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { diff --git a/src/lbm/trt/SplitPureSweep.impl.h b/src/lbm/trt/SplitPureSweep.impl.h index 90f742b7b0c916194aae6e0358daabe93c59ac41..0c60f11b440c230bff7c211b24e51e59700bdbda 100644 --- a/src/lbm/trt/SplitPureSweep.impl.h +++ b/src/lbm/trt/SplitPureSweep.impl.h @@ -140,11 +140,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -543,11 +543,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx ) { @@ -936,16 +936,16 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT t1x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT t2x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac1 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac2 = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT t1x2 = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT t2x2 = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT fac1 = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT fac2 = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -1358,16 +1358,16 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if< boost::mpl::and_ #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT t1x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT t2x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac1 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac2 = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT t1x2 = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT t2x2 = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT fac1 = new real_t[ uint_c( xSize ) ]; + real_t * WALBERLA_RESTRICT fac2 = new real_t[ uint_c( xSize ) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c( xSize ) ]; if( src->layout() == field::fzyx ) { diff --git a/src/lbm/trt/SplitSweep.impl.h b/src/lbm/trt/SplitSweep.impl.h index f33ef64ab34d7110ddb12b648b1c02c897cfbe25..fed687b167e9f1f89e20d7e64d63ce3941732cf4 100644 --- a/src/lbm/trt/SplitSweep.impl.h +++ b/src/lbm/trt/SplitSweep.impl.h @@ -134,13 +134,13 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -611,13 +611,13 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { @@ -1074,18 +1074,18 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT t1x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT t2x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac1 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac2 = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT t1x2 = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT t2x2 = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT fac1 = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT fac2 = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -1570,18 +1570,18 @@ void SplitSweep< LatticeModel_T, FlagField_T, typename boost::enable_if< boost:: #endif // temporaries, calculated by the first innermost loop - real_t * WALBERLA_RESTRICT velX = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velY = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT velZ = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT velX = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velY = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT velZ = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT t1x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT t2x2 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac1 = new real_t[ xSize ]; - real_t * WALBERLA_RESTRICT fac2 = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT t1x2 = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT t2x2 = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT fac1 = new real_t[ uint_c(xSize) ]; + real_t * WALBERLA_RESTRICT fac2 = new real_t[ uint_c(xSize) ]; - real_t * WALBERLA_RESTRICT feq_common = new real_t[ xSize ]; + real_t * WALBERLA_RESTRICT feq_common = new real_t[ uint_c(xSize) ]; - bool * WALBERLA_RESTRICT perform_lbm = new bool[ xSize ]; + bool * WALBERLA_RESTRICT perform_lbm = new bool[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { diff --git a/src/lbm/trt/bluegeneq/SplitPureSweep.impl.h b/src/lbm/trt/bluegeneq/SplitPureSweep.impl.h index 985667314552ca883d1115df4e4a45526c06f921..ca3821096a692da7bc61322f53e4b68a910e825a 100644 --- a/src/lbm/trt/bluegeneq/SplitPureSweep.impl.h +++ b/src/lbm/trt/bluegeneq/SplitPureSweep.impl.h @@ -151,11 +151,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* feq_common = new real_t[ xSize ]; + real_t* feq_common = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -687,11 +687,11 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* feq_common = new real_t[ xSize ]; + real_t* feq_common = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { @@ -1140,16 +1140,16 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* t1x2 = new real_t[ xSize ]; - real_t* t2x2 = new real_t[ xSize ]; - real_t* fac1 = new real_t[ xSize ]; - real_t* fac2 = new real_t[ xSize ]; + real_t* t1x2 = new real_t[ uint_c(xSize) ]; + real_t* t2x2 = new real_t[ uint_c(xSize) ]; + real_t* fac1 = new real_t[ uint_c(xSize) ]; + real_t* fac2 = new real_t[ uint_c(xSize) ]; - real_t* feq_common = new real_t[ xSize ]; + real_t* feq_common = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx && dst->layout() == field::fzyx ) { @@ -1699,16 +1699,16 @@ void SplitPureSweep< LatticeModel_T, typename boost::enable_if_c< ice_and< boost #endif // temporaries, calculated by the first innermost loop - real_t* velX = new real_t[ xSize ]; - real_t* velY = new real_t[ xSize ]; - real_t* velZ = new real_t[ xSize ]; + real_t* velX = new real_t[ uint_c(xSize) ]; + real_t* velY = new real_t[ uint_c(xSize) ]; + real_t* velZ = new real_t[ uint_c(xSize) ]; - real_t* t1x2 = new real_t[ xSize ]; - real_t* t2x2 = new real_t[ xSize ]; - real_t* fac1 = new real_t[ xSize ]; - real_t* fac2 = new real_t[ xSize ]; + real_t* t1x2 = new real_t[ uint_c(xSize) ]; + real_t* t2x2 = new real_t[ uint_c(xSize) ]; + real_t* fac1 = new real_t[ uint_c(xSize) ]; + real_t* fac2 = new real_t[ uint_c(xSize) ]; - real_t* feq_common = new real_t[ xSize ]; + real_t* feq_common = new real_t[ uint_c(xSize) ]; if( src->layout() == field::fzyx ) { diff --git a/src/python_coupling/basic_exports/BasicExports.cpp b/src/python_coupling/basic_exports/BasicExports.cpp index 837122b5a4012502f8833584308557621bd11944..a3e4a8f31cbeb1715515319c2b6ff0e37bbe1e42 100644 --- a/src/python_coupling/basic_exports/BasicExports.cpp +++ b/src/python_coupling/basic_exports/BasicExports.cpp @@ -41,6 +41,7 @@ #include "python_coupling/helper/BlockStorageExportHelpers.h" #include "stencil/Directions.h" +#include <boost/version.hpp> using namespace boost::python; @@ -111,6 +112,47 @@ struct NumpyFloatConversion }; +#if BOOST_VERSION < 106300 +// taken from https://github.com/boostorg/python/commit/97e4b34a15978ca9d7c296da2de89b78bba4e0d5 +template <class T> +struct exportSharedPtr +{ + exportSharedPtr() + { + converter::registry::insert( &convertible, &construct, boost::python::type_id<std::shared_ptr<T> >() +#ifndef BOOST_PYTHON_NO_PY_SIGNATURES + , &converter::expected_from_python_type_direct<T>::get_pytype +#endif + ); + } + +private: + static void* convertible( PyObject* p ) + { + if ( p == Py_None ) + return p; + + return converter::get_lvalue_from_python( p, converter::registered<T>::converters ); + } + + static void construct( PyObject* source, converter::rvalue_from_python_stage1_data* data ) + { + void* const storage = ( (converter::rvalue_from_python_storage< std::shared_ptr<T> >*) data )->storage.bytes; + // Deal with the "None" case. + if ( data->convertible == source ) + new (storage) std::shared_ptr<T>(); + else + { + std::shared_ptr<void> hold_convertible_ref_count( (void*)0, converter::shared_ptr_deleter( handle<>( borrowed( source ) ) ) ); + // use aliasing constructor + new (storage) std::shared_ptr<T>( hold_convertible_ref_count, static_cast<T*>(data->convertible) ); + } + + data->convertible = storage; + } +}; +#endif + //====================================================================================================================== // // Helper Functions @@ -609,6 +651,10 @@ void exportTiming() .def( self_ns::str(self) ) ; +#if BOOST_VERSION < 106300 + exportSharedPtr<WcTimingTree>(); +#endif + } @@ -996,6 +1042,10 @@ void exportStructuredBlockStorage() .add_property( "periodic", &SbS_periodic ) ; + +#if BOOST_VERSION < 106300 + exportSharedPtr<StructuredBlockStorage>(); +#endif } //====================================================================================================================== @@ -1013,6 +1063,11 @@ void exportCommunication() using communication::UniformMPIDatatypeInfo; class_< UniformMPIDatatypeInfo, shared_ptr<UniformMPIDatatypeInfo>, boost::noncopyable> ( "UniformMPIDatatypeInfo", no_init ); + +#if BOOST_VERSION < 106300 + exportSharedPtr<UniformPackInfo>(); + exportSharedPtr<UniformMPIDatatypeInfo>(); +#endif } //====================================================================================================================== diff --git a/tests/cuda/communication/GPUPackInfoCommunicationTest.cpp b/tests/cuda/communication/GPUPackInfoCommunicationTest.cpp index f3f19d085012b02e8947d2d5100a7c2e3ad1dfb6..0d118f1f30b204633967a7fad9fce80ada5f6786 100644 --- a/tests/cuda/communication/GPUPackInfoCommunicationTest.cpp +++ b/tests/cuda/communication/GPUPackInfoCommunicationTest.cpp @@ -149,11 +149,11 @@ int main( int argc, char ** argv ) // Setup communication schemes for synchronous GPUPackInfo CommSchemeType syncCommScheme(blocks); - syncCommScheme.addPackInfo( boost::make_shared< GPUPackInfoType >( syncGPUFieldId ) ); + syncCommScheme.addPackInfo( make_shared< GPUPackInfoType >( syncGPUFieldId ) ); // Setup communication scheme for asynchronous GPUPackInfo, which uses CUDA streams CommSchemeType asyncCommScheme(blocks); - asyncCommScheme.addPackInfo( boost::make_shared< GPUPackInfoType >( asyncGPUFieldId, streams ) ); + asyncCommScheme.addPackInfo( make_shared< GPUPackInfoType >( asyncGPUFieldId, streams ) ); // Perform one communication step for each scheme syncCommScheme(); diff --git a/tests/lbm/Poiseuille.cpp b/tests/lbm/Poiseuille.cpp index c1bd59992ee499f2283141d7a3bd27d3a4f3a99a..5e56138fe75b24a278d201d9af3a15226e76582b 100644 --- a/tests/lbm/Poiseuille.cpp +++ b/tests/lbm/Poiseuille.cpp @@ -118,7 +118,7 @@ public: lastMeanError_( 0 ), lastMaxError_( 0 ) { if ( filename.size() > 0 ) - graphWriter_ = boost::make_shared<gather::GnuPlotGraphWriter>( filename ); + graphWriter_ = make_shared<gather::GnuPlotGraphWriter>( filename ); } virtual ~PoiseuilleVelocityDataProcessor() {} diff --git a/tests/mesh/MeshDistancePlausibilityTest.cpp b/tests/mesh/MeshDistancePlausibilityTest.cpp index 69b76016696ab8af49ea07c3160feedee153d7d7..ff99381ff610d00f045113fed9f46df8e66264f4 100644 --- a/tests/mesh/MeshDistancePlausibilityTest.cpp +++ b/tests/mesh/MeshDistancePlausibilityTest.cpp @@ -207,8 +207,8 @@ int main( int argc, char * argv[] ) auto vtkOutput = vtk::createVTKOutput_BlockData( blocks, "plausibility test" ); - vtkOutput->addCellDataWriter( boost::make_shared< field::VTKWriter< DistanceField, float > >( distanceFieldId , "distance field" ) ); - vtkOutput->addCellDataWriter( boost::make_shared< field::VTKWriter< ErrorMarkerField > >( errorMarkerFieldId, "error marker" ) ); + vtkOutput->addCellDataWriter( make_shared< field::VTKWriter< DistanceField, float > >( distanceFieldId , "distance field" ) ); + vtkOutput->addCellDataWriter( make_shared< field::VTKWriter< ErrorMarkerField > >( errorMarkerFieldId, "error marker" ) ); writeFiles( vtkOutput, true )(); }