From 4c164e5600f160c311b8ae90274f3f94b163aa35 Mon Sep 17 00:00:00 2001 From: Christoph Rettinger <christoph.rettinger@fau.de> Date: Wed, 5 Dec 2018 11:11:58 +0100 Subject: [PATCH] Pecoupling: Tidied up template parameters, removed first order (Stokes) approximation --- .../ForcesOnSphereNearPlaneInShearFlow.cpp | 10 ++++------ .../HinderedSettlingDynamicsDPM.cpp | 1 - .../SphereWallCollisionBehaviorDPM.cpp | 1 - .../momentum_exchange_method/DragForceSphereMEM.cpp | 3 +-- .../DragForceSphereMEMRefinement.cpp | 6 +++--- .../GlobalBodyAsBoundaryMEMStaticRefinement.cpp | 2 +- .../LubricationCorrectionMEM.cpp | 3 +-- .../PeriodicParticleChannelMEM.cpp | 4 +--- .../momentum_exchange_method/SegreSilberbergMEM.cpp | 6 +++--- .../momentum_exchange_method/SettlingSphereMEM.cpp | 2 +- .../SettlingSphereMEMDynamicRefinement.cpp | 2 +- .../SettlingSphereMEMStaticRefinement.cpp | 2 +- .../momentum_exchange_method/SquirmerTest.cpp | 3 +-- .../momentum_exchange_method/TaylorCouetteFlowMEM.cpp | 4 +--- .../momentum_exchange_method/TorqueSphereMEM.cpp | 2 +- .../DragForceSpherePSM.cpp | 3 +-- .../DragForceSpherePSMRefinement.cpp | 5 ++--- .../SegreSilberbergPSM.cpp | 5 ++--- .../TorqueSpherePSM.cpp | 2 +- 19 files changed, 26 insertions(+), 40 deletions(-) diff --git a/apps/benchmarks/ForcesOnSphereNearPlaneInShearFlow/ForcesOnSphereNearPlaneInShearFlow.cpp b/apps/benchmarks/ForcesOnSphereNearPlaneInShearFlow/ForcesOnSphereNearPlaneInShearFlow.cpp index ccb7cc631..de8dd9d31 100644 --- a/apps/benchmarks/ForcesOnSphereNearPlaneInShearFlow/ForcesOnSphereNearPlaneInShearFlow.cpp +++ b/apps/benchmarks/ForcesOnSphereNearPlaneInShearFlow/ForcesOnSphereNearPlaneInShearFlow.cpp @@ -361,7 +361,7 @@ private: }; void initializeCouetteProfile( const shared_ptr< StructuredBlockStorage > & blocks, const BlockDataID & pdfFieldID, const BlockDataID & boundaryHandlingID, - const real_t & substrateHeight, const real_t & domainHeight, const real_t wallVelocity ) + const real_t & domainHeight, const real_t wallVelocity ) { const real_t rho = real_c(1); @@ -377,10 +377,8 @@ void initializeCouetteProfile( const shared_ptr< StructuredBlockStorage > & bloc Vector3< real_t > velocity( real_c(0) ); - if( coord[2] >= substrateHeight ) - { - velocity[0] = wallVelocity * (coord[2] - substrateHeight) / ( domainHeight - substrateHeight); - } + velocity[0] = wallVelocity * coord[2] / domainHeight; + pdfField->setToEquilibrium( x, y, z, velocity, rho ); ) } @@ -632,7 +630,7 @@ int main( int argc, char **argv ) // initialize Couette velocity profile in whole domain - if( !zeroShearTest ) initializeCouetteProfile(blocks, pdfFieldID, boundaryHandlingID, diameter, domainHeight, wallVelocity); + if( !zeroShearTest ) initializeCouetteProfile(blocks, pdfFieldID, boundaryHandlingID, domainHeight, wallVelocity); /////////////// // TIME LOOP // diff --git a/tests/pe_coupling/discrete_particle_methods/HinderedSettlingDynamicsDPM.cpp b/tests/pe_coupling/discrete_particle_methods/HinderedSettlingDynamicsDPM.cpp index 80d152379..1a4293fec 100644 --- a/tests/pe_coupling/discrete_particle_methods/HinderedSettlingDynamicsDPM.cpp +++ b/tests/pe_coupling/discrete_particle_methods/HinderedSettlingDynamicsDPM.cpp @@ -62,7 +62,6 @@ namespace hindered_settling_dynamics_dpm using namespace walberla; using walberla::uint_t; - /////////////// // CONSTANTS // /////////////// diff --git a/tests/pe_coupling/discrete_particle_methods/SphereWallCollisionBehaviorDPM.cpp b/tests/pe_coupling/discrete_particle_methods/SphereWallCollisionBehaviorDPM.cpp index 2cbdd76dc..f40e6156d 100644 --- a/tests/pe_coupling/discrete_particle_methods/SphereWallCollisionBehaviorDPM.cpp +++ b/tests/pe_coupling/discrete_particle_methods/SphereWallCollisionBehaviorDPM.cpp @@ -61,7 +61,6 @@ namespace sphere_wall_collision_behavior_dpm using namespace walberla; using walberla::uint_t; - /////////////// // CONSTANTS // /////////////// diff --git a/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEM.cpp b/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEM.cpp index caa0987ed..2e449157f 100644 --- a/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEM.cpp @@ -73,11 +73,10 @@ namespace drag_force_sphere_mem using namespace walberla; using walberla::uint_t; -using lbm::force_model::SimpleConstant; // PDF field, flag field & body field using ForceModel_T = lbm::force_model::LuoConstant; -typedef lbm::D3Q19< lbm::collision_model::TRT, false, ForceModel_T, 1> LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT, false, ForceModel_T > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEMRefinement.cpp b/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEMRefinement.cpp index f940ae033..358d165ba 100644 --- a/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEMRefinement.cpp +++ b/tests/pe_coupling/momentum_exchange_method/DragForceSphereMEMRefinement.cpp @@ -83,10 +83,9 @@ namespace drag_force_sphere_mem_refinement using namespace walberla; using walberla::uint_t; -using lbm::force_model::SimpleConstant; // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false, lbm::force_model::SimpleConstant, 1> LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT, false, lbm::force_model::SimpleConstant > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; @@ -531,7 +530,8 @@ int main( int argc, char **argv ) //////////////////////// // create the lattice model - LatticeModel_T latticeModel = LatticeModel_T( lbm::collision_model::TRT::constructWithMagicNumber( omega ), SimpleConstant( Vector3<real_t> ( setup.extForce, 0, 0 ) ) ); + LatticeModel_T latticeModel = LatticeModel_T( lbm::collision_model::TRT::constructWithMagicNumber( omega ), + lbm::force_model::SimpleConstant( Vector3<real_t> ( setup.extForce, 0, 0 ) ) ); // add PDF field ( uInit = <0,0,0>, rhoInit = 1 ) BlockDataID pdfFieldID = lbm::addPdfFieldToStorage< LatticeModel_T >( blocks, "pdf field (zyxf)", latticeModel, diff --git a/tests/pe_coupling/momentum_exchange_method/GlobalBodyAsBoundaryMEMStaticRefinement.cpp b/tests/pe_coupling/momentum_exchange_method/GlobalBodyAsBoundaryMEMStaticRefinement.cpp index 2afeebd2d..b494339bb 100644 --- a/tests/pe_coupling/momentum_exchange_method/GlobalBodyAsBoundaryMEMStaticRefinement.cpp +++ b/tests/pe_coupling/momentum_exchange_method/GlobalBodyAsBoundaryMEMStaticRefinement.cpp @@ -79,7 +79,7 @@ using walberla::uint_t; ////////////// // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/LubricationCorrectionMEM.cpp b/tests/pe_coupling/momentum_exchange_method/LubricationCorrectionMEM.cpp index 0f4dbd3fe..2ebe21f51 100644 --- a/tests/pe_coupling/momentum_exchange_method/LubricationCorrectionMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/LubricationCorrectionMEM.cpp @@ -77,8 +77,7 @@ using walberla::uint_t; ////////////// // pdf field & flag field - -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/PeriodicParticleChannelMEM.cpp b/tests/pe_coupling/momentum_exchange_method/PeriodicParticleChannelMEM.cpp index 2ecfd788d..678aa5822 100644 --- a/tests/pe_coupling/momentum_exchange_method/PeriodicParticleChannelMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/PeriodicParticleChannelMEM.cpp @@ -78,14 +78,12 @@ namespace periodic_particle_channel_mem using namespace walberla; using walberla::uint_t; - - ////////////// // TYPEDEFS // ////////////// // pdf field & flag field -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/SegreSilberbergMEM.cpp b/tests/pe_coupling/momentum_exchange_method/SegreSilberbergMEM.cpp index a238ce167..ca31d9392 100644 --- a/tests/pe_coupling/momentum_exchange_method/SegreSilberbergMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/SegreSilberbergMEM.cpp @@ -76,14 +76,13 @@ namespace segre_silberberg_mem using namespace walberla; using walberla::uint_t; -using lbm::force_model::SimpleConstant; ////////////// // TYPEDEFS // ////////////// // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false, SimpleConstant > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT, false, lbm::force_model::SimpleConstant > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; @@ -582,7 +581,8 @@ int main( int argc, char **argv ) //////////////////////// // create the lattice model - LatticeModel_T latticeModel = LatticeModel_T( lbm::collision_model::TRT::constructWithMagicNumber( omega ), SimpleConstant( Vector3<real_t> ( setup.forcing, real_t(0), real_t(0) ) ) ); + LatticeModel_T latticeModel = LatticeModel_T( lbm::collision_model::TRT::constructWithMagicNumber( omega ), + lbm::force_model::SimpleConstant( Vector3<real_t> ( setup.forcing, real_t(0), real_t(0) ) ) ); // add PDF field BlockDataID pdfFieldID = lbm::addPdfFieldToStorage< LatticeModel_T >( blocks, "pdf field (zyxf)", latticeModel, diff --git a/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEM.cpp b/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEM.cpp index b90dcf005..482bc1883 100644 --- a/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEM.cpp @@ -80,7 +80,7 @@ using walberla::uint_t; ////////////// // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMDynamicRefinement.cpp b/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMDynamicRefinement.cpp index 885e9ed5f..558747d90 100644 --- a/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMDynamicRefinement.cpp +++ b/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMDynamicRefinement.cpp @@ -86,7 +86,7 @@ using walberla::uint_t; ////////////// // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMStaticRefinement.cpp b/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMStaticRefinement.cpp index 3cf8bf5fd..f0863496b 100644 --- a/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMStaticRefinement.cpp +++ b/tests/pe_coupling/momentum_exchange_method/SettlingSphereMEMStaticRefinement.cpp @@ -82,7 +82,7 @@ using walberla::uint_t; ////////////// // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/SquirmerTest.cpp b/tests/pe_coupling/momentum_exchange_method/SquirmerTest.cpp index adca45086..1d3bab503 100644 --- a/tests/pe_coupling/momentum_exchange_method/SquirmerTest.cpp +++ b/tests/pe_coupling/momentum_exchange_method/SquirmerTest.cpp @@ -80,8 +80,7 @@ using namespace walberla; using walberla::uint_t; // PDF field, flag field & body field -using ForceModel_T = lbm::force_model::None; -typedef lbm::D3Q19<lbm::collision_model::TRT, false, ForceModel_T> LatticeModel_T; +typedef lbm::D3Q19<lbm::collision_model::TRT> LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/TaylorCouetteFlowMEM.cpp b/tests/pe_coupling/momentum_exchange_method/TaylorCouetteFlowMEM.cpp index 0205b4695..b654d5dfa 100644 --- a/tests/pe_coupling/momentum_exchange_method/TaylorCouetteFlowMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/TaylorCouetteFlowMEM.cpp @@ -69,14 +69,12 @@ namespace taylor_coette_flow_mem using namespace walberla; using walberla::uint_t; - - ////////////// // TYPEDEFS // ////////////// // pdf field & flag field -typedef lbm::D3Q19< lbm::collision_model::TRT, false > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/momentum_exchange_method/TorqueSphereMEM.cpp b/tests/pe_coupling/momentum_exchange_method/TorqueSphereMEM.cpp index 7f43c9fd2..68a74cde6 100644 --- a/tests/pe_coupling/momentum_exchange_method/TorqueSphereMEM.cpp +++ b/tests/pe_coupling/momentum_exchange_method/TorqueSphereMEM.cpp @@ -76,7 +76,7 @@ using namespace walberla; using walberla::uint_t; // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::TRT, false, lbm::force_model::None, 1> LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::TRT > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSM.cpp b/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSM.cpp index fb92b0c68..b5e53a23f 100644 --- a/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSM.cpp +++ b/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSM.cpp @@ -73,11 +73,10 @@ namespace drag_force_sphere_psm using namespace walberla; using walberla::uint_t; -using lbm::force_model::SimpleConstant; // PDF field, flag field & body field using ForceModel_T = lbm::force_model::LuoConstant; -typedef lbm::D3Q19< lbm::collision_model::SRT, false, ForceModel_T, 1> LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::SRT, false, ForceModel_T> LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; diff --git a/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSMRefinement.cpp b/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSMRefinement.cpp index 58add3e24..b0ca02da9 100644 --- a/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSMRefinement.cpp +++ b/tests/pe_coupling/partially_saturated_cells_method/DragForceSpherePSMRefinement.cpp @@ -83,10 +83,9 @@ namespace drag_force_sphere_psm_refinement using namespace walberla; using walberla::uint_t; -using lbm::force_model::SimpleConstant; // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::SRT, false, lbm::force_model::SimpleConstant, 1> LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::SRT, false, lbm::force_model::SimpleConstant > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; @@ -536,7 +535,7 @@ int main( int argc, char **argv ) //////////////////////// // create the lattice model - LatticeModel_T latticeModel = LatticeModel_T( omega, SimpleConstant( Vector3<real_t> ( setup.extForce, 0, 0 ) ) ); + LatticeModel_T latticeModel = LatticeModel_T( omega, lbm::force_model::SimpleConstant( Vector3<real_t> ( setup.extForce, 0, 0 ) ) ); // add PDF field ( uInit = <0,0,0>, rhoInit = 1 ) BlockDataID pdfFieldID = lbm::addPdfFieldToStorage< LatticeModel_T >( blocks, "pdf field (zyxf)", latticeModel, diff --git a/tests/pe_coupling/partially_saturated_cells_method/SegreSilberbergPSM.cpp b/tests/pe_coupling/partially_saturated_cells_method/SegreSilberbergPSM.cpp index 46f2a10e4..935a0c1d5 100644 --- a/tests/pe_coupling/partially_saturated_cells_method/SegreSilberbergPSM.cpp +++ b/tests/pe_coupling/partially_saturated_cells_method/SegreSilberbergPSM.cpp @@ -76,14 +76,13 @@ namespace segre_silberberg_psm using namespace walberla; using walberla::uint_t; -using lbm::force_model::SimpleConstant; ////////////// // TYPEDEFS // ////////////// // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::SRT, false, SimpleConstant > LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::SRT, false, lbm::force_model::SimpleConstant > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; @@ -532,7 +531,7 @@ int main( int argc, char **argv ) //////////////////////// // create the lattice model - LatticeModel_T latticeModel = LatticeModel_T( omega, SimpleConstant( Vector3<real_t> ( setup.forcing, real_c(0), real_c(0) ) ) ); + LatticeModel_T latticeModel = LatticeModel_T( omega, lbm::force_model::SimpleConstant( Vector3<real_t> ( setup.forcing, real_c(0), real_c(0) ) ) ); // add PDF field BlockDataID pdfFieldID = lbm::addPdfFieldToStorage< LatticeModel_T >( blocks, "pdf field (zyxf)", latticeModel, diff --git a/tests/pe_coupling/partially_saturated_cells_method/TorqueSpherePSM.cpp b/tests/pe_coupling/partially_saturated_cells_method/TorqueSpherePSM.cpp index 64114c43e..7cd33d47e 100644 --- a/tests/pe_coupling/partially_saturated_cells_method/TorqueSpherePSM.cpp +++ b/tests/pe_coupling/partially_saturated_cells_method/TorqueSpherePSM.cpp @@ -75,7 +75,7 @@ using namespace walberla; using walberla::uint_t; // PDF field, flag field & body field -typedef lbm::D3Q19< lbm::collision_model::SRT, false, lbm::force_model::None, 1> LatticeModel_T; +typedef lbm::D3Q19< lbm::collision_model::SRT, false > LatticeModel_T; using Stencil_T = LatticeModel_T::Stencil; using PdfField_T = lbm::PdfField<LatticeModel_T>; -- GitLab