diff --git a/src/cpu/VirtualFluidsCore/LBM/CumulantK17LBMKernelUnified.cpp b/src/cpu/VirtualFluidsCore/LBM/CumulantK17LBMKernelUnified.cpp index 2dfa947f91172c6d79104e7cb8190b58927ffc87..fb4aa49a3bc661e5a05860e155864acf270fdb10 100644 --- a/src/cpu/VirtualFluidsCore/LBM/CumulantK17LBMKernelUnified.cpp +++ b/src/cpu/VirtualFluidsCore/LBM/CumulantK17LBMKernelUnified.cpp @@ -214,65 +214,65 @@ void CumulantK17LBMKernelUnified::calculate(int step) forces[2] = forcingX3 * deltaT; } - VF::LBM::Distribution27 distribution; - - distribution.f[VF::LBM::DIR::PZZ] = mfcbb; - distribution.f[VF::LBM::DIR::MZZ] = mfabb; - distribution.f[VF::LBM::DIR::ZPZ] = mfbcb; - distribution.f[VF::LBM::DIR::ZMZ] = mfbab; - distribution.f[VF::LBM::DIR::ZZP] = mfbbc; - distribution.f[VF::LBM::DIR::ZZM] = mfbba; - distribution.f[VF::LBM::DIR::PPZ] = mfccb; - distribution.f[VF::LBM::DIR::MMZ] = mfaab; - distribution.f[VF::LBM::DIR::PMZ] = mfcab; - distribution.f[VF::LBM::DIR::MPZ] = mfacb; - distribution.f[VF::LBM::DIR::PZP] = mfcbc; - distribution.f[VF::LBM::DIR::MZM] = mfaba; - distribution.f[VF::LBM::DIR::PZM] = mfcba; - distribution.f[VF::LBM::DIR::MZP] = mfabc; - distribution.f[VF::LBM::DIR::ZPP] = mfbcc; - distribution.f[VF::LBM::DIR::ZMM] = mfbaa; - distribution.f[VF::LBM::DIR::ZPM] = mfbca; - distribution.f[VF::LBM::DIR::ZMP] = mfbac; - distribution.f[VF::LBM::DIR::PPP] = mfccc; - distribution.f[VF::LBM::DIR::MPP] = mfacc; - distribution.f[VF::LBM::DIR::PMP] = mfcac; - distribution.f[VF::LBM::DIR::MMP] = mfaac; - distribution.f[VF::LBM::DIR::PPM] = mfcca; - distribution.f[VF::LBM::DIR::MPM] = mfaca; - distribution.f[VF::LBM::DIR::PMM] = mfcaa; - distribution.f[VF::LBM::DIR::MMM] = mfaaa; - distribution.f[VF::LBM::DIR::ZZZ] = mfbbb; - - VF::LBM::cumulantChimera(distribution, omega, forces); - - mfcbb = distribution.f[VF::LBM::DIR::PZZ]; - mfabb = distribution.f[VF::LBM::DIR::MZZ]; - mfbcb = distribution.f[VF::LBM::DIR::ZPZ]; - mfbab = distribution.f[VF::LBM::DIR::ZMZ]; - mfbbc = distribution.f[VF::LBM::DIR::ZZP]; - mfbba = distribution.f[VF::LBM::DIR::ZZM]; - mfccb = distribution.f[VF::LBM::DIR::PPZ]; - mfaab = distribution.f[VF::LBM::DIR::MMZ]; - mfcab = distribution.f[VF::LBM::DIR::PMZ]; - mfacb = distribution.f[VF::LBM::DIR::MPZ]; - mfcbc = distribution.f[VF::LBM::DIR::PZP]; - mfaba = distribution.f[VF::LBM::DIR::MZM]; - mfcba = distribution.f[VF::LBM::DIR::PZM]; - mfabc = distribution.f[VF::LBM::DIR::MZP]; - mfbcc = distribution.f[VF::LBM::DIR::ZPP]; - mfbaa = distribution.f[VF::LBM::DIR::ZMM]; - mfbca = distribution.f[VF::LBM::DIR::ZPM]; - mfbac = distribution.f[VF::LBM::DIR::ZMP]; - mfccc = distribution.f[VF::LBM::DIR::PPP]; - mfacc = distribution.f[VF::LBM::DIR::MPP]; - mfcac = distribution.f[VF::LBM::DIR::PMP]; - mfaac = distribution.f[VF::LBM::DIR::MMP]; - mfcca = distribution.f[VF::LBM::DIR::PPM]; - mfaca = distribution.f[VF::LBM::DIR::MPM]; - mfcaa = distribution.f[VF::LBM::DIR::PMM]; - mfaaa = distribution.f[VF::LBM::DIR::MMM]; - mfbbb = distribution.f[VF::LBM::DIR::ZZZ]; + vf::lbm::Distribution27 distribution; + + distribution.f[vf::lbm::dir::PZZ] = mfcbb; + distribution.f[vf::lbm::dir::MZZ] = mfabb; + distribution.f[vf::lbm::dir::ZPZ] = mfbcb; + distribution.f[vf::lbm::dir::ZMZ] = mfbab; + distribution.f[vf::lbm::dir::ZZP] = mfbbc; + distribution.f[vf::lbm::dir::ZZM] = mfbba; + distribution.f[vf::lbm::dir::PPZ] = mfccb; + distribution.f[vf::lbm::dir::MMZ] = mfaab; + distribution.f[vf::lbm::dir::PMZ] = mfcab; + distribution.f[vf::lbm::dir::MPZ] = mfacb; + distribution.f[vf::lbm::dir::PZP] = mfcbc; + distribution.f[vf::lbm::dir::MZM] = mfaba; + distribution.f[vf::lbm::dir::PZM] = mfcba; + distribution.f[vf::lbm::dir::MZP] = mfabc; + distribution.f[vf::lbm::dir::ZPP] = mfbcc; + distribution.f[vf::lbm::dir::ZMM] = mfbaa; + distribution.f[vf::lbm::dir::ZPM] = mfbca; + distribution.f[vf::lbm::dir::ZMP] = mfbac; + distribution.f[vf::lbm::dir::PPP] = mfccc; + distribution.f[vf::lbm::dir::MPP] = mfacc; + distribution.f[vf::lbm::dir::PMP] = mfcac; + distribution.f[vf::lbm::dir::MMP] = mfaac; + distribution.f[vf::lbm::dir::PPM] = mfcca; + distribution.f[vf::lbm::dir::MPM] = mfaca; + distribution.f[vf::lbm::dir::PMM] = mfcaa; + distribution.f[vf::lbm::dir::MMM] = mfaaa; + distribution.f[vf::lbm::dir::ZZZ] = mfbbb; + + vf::lbm::cumulantChimera(distribution, omega, forces); + + mfcbb = distribution.f[vf::lbm::dir::PZZ]; + mfabb = distribution.f[vf::lbm::dir::MZZ]; + mfbcb = distribution.f[vf::lbm::dir::ZPZ]; + mfbab = distribution.f[vf::lbm::dir::ZMZ]; + mfbbc = distribution.f[vf::lbm::dir::ZZP]; + mfbba = distribution.f[vf::lbm::dir::ZZM]; + mfccb = distribution.f[vf::lbm::dir::PPZ]; + mfaab = distribution.f[vf::lbm::dir::MMZ]; + mfcab = distribution.f[vf::lbm::dir::PMZ]; + mfacb = distribution.f[vf::lbm::dir::MPZ]; + mfcbc = distribution.f[vf::lbm::dir::PZP]; + mfaba = distribution.f[vf::lbm::dir::MZM]; + mfcba = distribution.f[vf::lbm::dir::PZM]; + mfabc = distribution.f[vf::lbm::dir::MZP]; + mfbcc = distribution.f[vf::lbm::dir::ZPP]; + mfbaa = distribution.f[vf::lbm::dir::ZMM]; + mfbca = distribution.f[vf::lbm::dir::ZPM]; + mfbac = distribution.f[vf::lbm::dir::ZMP]; + mfccc = distribution.f[vf::lbm::dir::PPP]; + mfacc = distribution.f[vf::lbm::dir::MPP]; + mfcac = distribution.f[vf::lbm::dir::PMP]; + mfaac = distribution.f[vf::lbm::dir::MMP]; + mfcca = distribution.f[vf::lbm::dir::PPM]; + mfaca = distribution.f[vf::lbm::dir::MPM]; + mfcaa = distribution.f[vf::lbm::dir::PMM]; + mfaaa = distribution.f[vf::lbm::dir::MMM]; + mfbbb = distribution.f[vf::lbm::dir::ZZZ]; ////////////////////////////////////////////////////////////////////////// //proof correctness diff --git a/src/cpu/VirtualFluidsCore/LBM/D3Q27System.cpp b/src/cpu/VirtualFluidsCore/LBM/D3Q27System.cpp index fe635126152bfd94deeadf40c51c515220db342b..105603b35d043799672a58fda83ba503af70b703 100644 --- a/src/cpu/VirtualFluidsCore/LBM/D3Q27System.cpp +++ b/src/cpu/VirtualFluidsCore/LBM/D3Q27System.cpp @@ -25,22 +25,22 @@ const int INVDIR[] = { INV_E, INV_W, INV_N, INV_S, INV_T, INV_B, INV LBMReal getDensity(const LBMReal *const &f /*[27]*/) { - return VF::LBM::getDensity(f); + return vf::lbm::getDensity(f); } LBMReal getIncompVelocityX1(const LBMReal *const &f /*[27]*/) { - return VF::LBM::getIncompressibleVelocityX1(f); + return vf::lbm::getIncompressibleVelocityX1(f); } LBMReal getIncompVelocityX2(const LBMReal *const &f /*[27]*/) { - return VF::LBM::getIncompressibleVelocityX2(f); + return vf::lbm::getIncompressibleVelocityX2(f); } LBMReal getIncompVelocityX3(const LBMReal *const &f /*[27]*/) { - return VF::LBM::getIncompressibleVelocityX3(f); + return vf::lbm::getIncompressibleVelocityX3(f); } diff --git a/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu b/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu index e4aabe980c9ea4c95f5650591de48d223b56fa0d..138495f6e9274b3b517775d61494810ee1a00cb4 100644 --- a/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu +++ b/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu @@ -221,10 +221,10 @@ extern "C" __global__ void LBCalcMac27( real* vxD, { const auto distribution = getDistribution(DD, size_Mat, evenOrOdd, k, neighborX, neighborY, neighborZ); - rhoD[k] = VF::LBM::getDensity(distribution.f); - vxD[k] = VF::LBM::getIncompressibleVelocityX1(distribution.f); - vyD[k] = VF::LBM::getIncompressibleVelocityX2(distribution.f); - vzD[k] = VF::LBM::getIncompressibleVelocityX3(distribution.f); + rhoD[k] = vf::lbm::getDensity(distribution.f); + vxD[k] = vf::lbm::getIncompressibleVelocityX1(distribution.f); + vyD[k] = vf::lbm::getIncompressibleVelocityX2(distribution.f); + vzD[k] = vf::lbm::getIncompressibleVelocityX3(distribution.f); } } diff --git a/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu b/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu index fb6cba5c0cf82675b54a30fc875b58a1d937a681..9dc75cfa6019a29350263f9a554aa9a489566cfa 100644 --- a/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu +++ b/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu @@ -270,29 +270,29 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_ real EQcaa = drho * c1o3; real EQaca = drho * c1o3; //////////////////////////////////////////////////////////////////////////////////// - VF::LBM::backwardChimeraWithK(EQaaa, EQaab, EQaac, vvz, vz2, c1o1); - VF::LBM::backwardChimeraWithK(EQaca, EQacb, EQacc, vvz, vz2, c1o3); + vf::lbm::backwardChimeraWithK(EQaaa, EQaab, EQaac, vvz, vz2, c1o1); + vf::lbm::backwardChimeraWithK(EQaca, EQacb, EQacc, vvz, vz2, c1o3); /////////////////////////////////////////////////////////// EQcaa = EQaca; EQcab = EQacb; EQcac = EQacc; /////////////////////////////////////////////////////////// - VF::LBM::backwardChimeraWithK(EQcca, EQccb, EQccc, vvz, vz2, c1o9); - - VF::LBM::backwardChimeraWithK(EQaaa, EQaba, EQaca, vvy, vy2, c1o6); - VF::LBM::backwardChimeraWithK(EQaab, EQabb, EQacb, vvy, vy2, c2o3); - VF::LBM::backwardChimeraWithK(EQaac, EQabc, EQacc, vvy, vy2, c1o6); - VF::LBM::backwardChimeraWithK(EQcaa, EQcba, EQcca, vvy, vy2, c1o18); - VF::LBM::backwardChimeraWithK(EQcab, EQcbb, EQccb, vvy, vy2, c2o9); - VF::LBM::backwardChimeraWithK(EQcac, EQcbc, EQccc, vvy, vy2, c1o18); - - VF::LBM::backwardChimeraWithK(EQaaa, EQbaa, EQcaa, vvx, vx2, c1o36); - VF::LBM::backwardChimeraWithK(EQaab, EQbab, EQcab, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQaac, EQbac, EQcac, vvx, vx2, c1o36); - VF::LBM::backwardChimeraWithK(EQaba, EQbba, EQcba, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQabb, EQbbb, EQcbb, vvx, vx2, c4o9); - VF::LBM::backwardChimeraWithK(EQabc, EQbbc, EQcbc, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQaca, EQbca, EQcca, vvx, vx2, c1o36); - VF::LBM::backwardChimeraWithK(EQacb, EQbcb, EQccb, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQacc, EQbcc, EQccc, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQcca, EQccb, EQccc, vvz, vz2, c1o9); + + vf::lbm::backwardChimeraWithK(EQaaa, EQaba, EQaca, vvy, vy2, c1o6); + vf::lbm::backwardChimeraWithK(EQaab, EQabb, EQacb, vvy, vy2, c2o3); + vf::lbm::backwardChimeraWithK(EQaac, EQabc, EQacc, vvy, vy2, c1o6); + vf::lbm::backwardChimeraWithK(EQcaa, EQcba, EQcca, vvy, vy2, c1o18); + vf::lbm::backwardChimeraWithK(EQcab, EQcbb, EQccb, vvy, vy2, c2o9); + vf::lbm::backwardChimeraWithK(EQcac, EQcbc, EQccc, vvy, vy2, c1o18); + + vf::lbm::backwardChimeraWithK(EQaaa, EQbaa, EQcaa, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQaab, EQbab, EQcab, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQaac, EQbac, EQcac, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQaba, EQbba, EQcba, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQabb, EQbbb, EQcbb, vvx, vx2, c4o9); + vf::lbm::backwardChimeraWithK(EQabc, EQbbc, EQcbc, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQaca, EQbca, EQcca, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQacb, EQbcb, EQccb, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQacc, EQbcc, EQccc, vvx, vx2, c1o36); //////////////////////////////////////////////////////////////////////////////////// //Pre-condition @@ -327,35 +327,35 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_ //////////////////////////////////////////////////////////////////////////////////// //Hin //////////////////////////////////////////////////////////////////////////////////// - VF::LBM::forwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); - VF::LBM::forwardChimera(mfaba, mfabb, mfabc, vvz, vz2); - VF::LBM::forwardChimera(mfaca, mfacb, mfacc, vvz, vz2); - VF::LBM::forwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); - VF::LBM::forwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); - VF::LBM::forwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); - VF::LBM::forwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); - VF::LBM::forwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); - VF::LBM::forwardChimera(mfcca, mfccb, mfccc, vvz, vz2); - - VF::LBM::forwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); - VF::LBM::forwardChimera(mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::forwardChimera(mfaac, mfabc, mfacc, vvy, vy2); - VF::LBM::forwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); - VF::LBM::forwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::forwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); - VF::LBM::forwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); - VF::LBM::forwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::forwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); - - VF::LBM::forwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); - VF::LBM::forwardChimera(mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::forwardChimera(mfaac, mfbac, mfcac, vvx, vx2); - VF::LBM::forwardChimera(mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::forwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::forwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::forwardChimera(mfaca, mfbca, mfcca, vvx, vx2); - VF::LBM::forwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::forwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); + vf::lbm::forwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); + vf::lbm::forwardChimera(mfaba, mfabb, mfabc, vvz, vz2); + vf::lbm::forwardChimera(mfaca, mfacb, mfacc, vvz, vz2); + vf::lbm::forwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); + vf::lbm::forwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); + vf::lbm::forwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); + vf::lbm::forwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); + vf::lbm::forwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); + vf::lbm::forwardChimera(mfcca, mfccb, mfccc, vvz, vz2); + + vf::lbm::forwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); + vf::lbm::forwardChimera(mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::forwardChimera(mfaac, mfabc, mfacc, vvy, vy2); + vf::lbm::forwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); + vf::lbm::forwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::forwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); + vf::lbm::forwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); + vf::lbm::forwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::forwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); + + vf::lbm::forwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); + vf::lbm::forwardChimera(mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::forwardChimera(mfaac, mfbac, mfcac, vvx, vx2); + vf::lbm::forwardChimera(mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::forwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::forwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::forwardChimera(mfaca, mfbca, mfcca, vvx, vx2); + vf::lbm::forwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::forwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); ////////////////////////////////////////////////////////////////////////////////////// ////Hin @@ -623,35 +623,35 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_ //////////////////////////////////////////////////////////////////////////////////// //back //////////////////////////////////////////////////////////////////////////////////// - VF::LBM::backwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); - VF::LBM::backwardChimera(mfaba, mfabb, mfabc, vvz, vz2); - VF::LBM::backwardChimera(mfaca, mfacb, mfacc, vvz, vz2); - VF::LBM::backwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); - VF::LBM::backwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); - VF::LBM::backwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); - VF::LBM::backwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); - VF::LBM::backwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); - VF::LBM::backwardChimera(mfcca, mfccb, mfccc, vvz, vz2); - - VF::LBM::backwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); - VF::LBM::backwardChimera(mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::backwardChimera(mfaac, mfabc, mfacc, vvy, vy2); - VF::LBM::backwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); - VF::LBM::backwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::backwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); - VF::LBM::backwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); - VF::LBM::backwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::backwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); - - VF::LBM::backwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); - VF::LBM::backwardChimera(mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::backwardChimera(mfaac, mfbac, mfcac, vvx, vx2); - VF::LBM::backwardChimera(mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::backwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::backwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::backwardChimera(mfaca, mfbca, mfcca, vvx, vx2); - VF::LBM::backwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::backwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); + vf::lbm::backwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); + vf::lbm::backwardChimera(mfaba, mfabb, mfabc, vvz, vz2); + vf::lbm::backwardChimera(mfaca, mfacb, mfacc, vvz, vz2); + vf::lbm::backwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); + vf::lbm::backwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); + vf::lbm::backwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); + vf::lbm::backwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); + vf::lbm::backwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); + vf::lbm::backwardChimera(mfcca, mfccb, mfccc, vvz, vz2); + + vf::lbm::backwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); + vf::lbm::backwardChimera(mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::backwardChimera(mfaac, mfabc, mfacc, vvy, vy2); + vf::lbm::backwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); + vf::lbm::backwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::backwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); + vf::lbm::backwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); + vf::lbm::backwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::backwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); + + vf::lbm::backwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); + vf::lbm::backwardChimera(mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::backwardChimera(mfaac, mfbac, mfcac, vvx, vx2); + vf::lbm::backwardChimera(mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::backwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::backwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::backwardChimera(mfaca, mfbca, mfcca, vvx, vx2); + vf::lbm::backwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::backwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); //////////////////////////////////////////////////////////////////////////////////// //mfcbb += EQcbb; @@ -1185,29 +1185,29 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27( real EQcaa = drho * c1o3; real EQaca = drho * c1o3; //////////////////////////////////////////////////////////////////////////////////// - VF::LBM::backwardChimeraWithK(EQaaa, EQaab, EQaac, vvz, vz2, c1o1); - VF::LBM::backwardChimeraWithK(EQaca, EQacb, EQacc, vvz, vz2, c1o3); + vf::lbm::backwardChimeraWithK(EQaaa, EQaab, EQaac, vvz, vz2, c1o1); + vf::lbm::backwardChimeraWithK(EQaca, EQacb, EQacc, vvz, vz2, c1o3); /////////////////////////////////////////////////////////// EQcaa = EQaca; EQcab = EQacb; EQcac = EQacc; /////////////////////////////////////////////////////////// - VF::LBM::backwardChimeraWithK(EQcca, EQccb, EQccc, vvz, vz2, c1o9); - - VF::LBM::backwardChimeraWithK(EQaaa, EQaba, EQaca, vvy, vy2, c1o6); - VF::LBM::backwardChimeraWithK(EQaab, EQabb, EQacb, vvy, vy2, c2o3); - VF::LBM::backwardChimeraWithK(EQaac, EQabc, EQacc, vvy, vy2, c1o6); - VF::LBM::backwardChimeraWithK(EQcaa, EQcba, EQcca, vvy, vy2, c1o18); - VF::LBM::backwardChimeraWithK(EQcab, EQcbb, EQccb, vvy, vy2, c2o9); - VF::LBM::backwardChimeraWithK(EQcac, EQcbc, EQccc, vvy, vy2, c1o18); - - VF::LBM::backwardChimeraWithK(EQaaa, EQbaa, EQcaa, vvx, vx2, c1o36); - VF::LBM::backwardChimeraWithK(EQaab, EQbab, EQcab, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQaac, EQbac, EQcac, vvx, vx2, c1o36); - VF::LBM::backwardChimeraWithK(EQaba, EQbba, EQcba, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQabb, EQbbb, EQcbb, vvx, vx2, c4o9); - VF::LBM::backwardChimeraWithK(EQabc, EQbbc, EQcbc, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQaca, EQbca, EQcca, vvx, vx2, c1o36); - VF::LBM::backwardChimeraWithK(EQacb, EQbcb, EQccb, vvx, vx2, c1o9); - VF::LBM::backwardChimeraWithK(EQacc, EQbcc, EQccc, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQcca, EQccb, EQccc, vvz, vz2, c1o9); + + vf::lbm::backwardChimeraWithK(EQaaa, EQaba, EQaca, vvy, vy2, c1o6); + vf::lbm::backwardChimeraWithK(EQaab, EQabb, EQacb, vvy, vy2, c2o3); + vf::lbm::backwardChimeraWithK(EQaac, EQabc, EQacc, vvy, vy2, c1o6); + vf::lbm::backwardChimeraWithK(EQcaa, EQcba, EQcca, vvy, vy2, c1o18); + vf::lbm::backwardChimeraWithK(EQcab, EQcbb, EQccb, vvy, vy2, c2o9); + vf::lbm::backwardChimeraWithK(EQcac, EQcbc, EQccc, vvy, vy2, c1o18); + + vf::lbm::backwardChimeraWithK(EQaaa, EQbaa, EQcaa, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQaab, EQbab, EQcab, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQaac, EQbac, EQcac, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQaba, EQbba, EQcba, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQabb, EQbbb, EQcbb, vvx, vx2, c4o9); + vf::lbm::backwardChimeraWithK(EQabc, EQbbc, EQcbc, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQaca, EQbca, EQcca, vvx, vx2, c1o36); + vf::lbm::backwardChimeraWithK(EQacb, EQbcb, EQccb, vvx, vx2, c1o9); + vf::lbm::backwardChimeraWithK(EQacc, EQbcc, EQccc, vvx, vx2, c1o36); //////////////////////////////////////////////////////////////////////////////////// //Pre-condition @@ -1242,35 +1242,35 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27( //////////////////////////////////////////////////////////////////////////////////// //Hin //////////////////////////////////////////////////////////////////////////////////// - VF::LBM::forwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); - VF::LBM::forwardChimera(mfaba, mfabb, mfabc, vvz, vz2); - VF::LBM::forwardChimera(mfaca, mfacb, mfacc, vvz, vz2); - VF::LBM::forwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); - VF::LBM::forwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); - VF::LBM::forwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); - VF::LBM::forwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); - VF::LBM::forwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); - VF::LBM::forwardChimera(mfcca, mfccb, mfccc, vvz, vz2); - - VF::LBM::forwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); - VF::LBM::forwardChimera(mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::forwardChimera(mfaac, mfabc, mfacc, vvy, vy2); - VF::LBM::forwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); - VF::LBM::forwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::forwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); - VF::LBM::forwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); - VF::LBM::forwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::forwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); - - VF::LBM::forwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); - VF::LBM::forwardChimera(mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::forwardChimera(mfaac, mfbac, mfcac, vvx, vx2); - VF::LBM::forwardChimera(mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::forwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::forwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::forwardChimera(mfaca, mfbca, mfcca, vvx, vx2); - VF::LBM::forwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::forwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); + vf::lbm::forwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); + vf::lbm::forwardChimera(mfaba, mfabb, mfabc, vvz, vz2); + vf::lbm::forwardChimera(mfaca, mfacb, mfacc, vvz, vz2); + vf::lbm::forwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); + vf::lbm::forwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); + vf::lbm::forwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); + vf::lbm::forwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); + vf::lbm::forwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); + vf::lbm::forwardChimera(mfcca, mfccb, mfccc, vvz, vz2); + + vf::lbm::forwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); + vf::lbm::forwardChimera(mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::forwardChimera(mfaac, mfabc, mfacc, vvy, vy2); + vf::lbm::forwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); + vf::lbm::forwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::forwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); + vf::lbm::forwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); + vf::lbm::forwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::forwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); + + vf::lbm::forwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); + vf::lbm::forwardChimera(mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::forwardChimera(mfaac, mfbac, mfcac, vvx, vx2); + vf::lbm::forwardChimera(mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::forwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::forwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::forwardChimera(mfaca, mfbca, mfcca, vvx, vx2); + vf::lbm::forwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::forwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); ////////////////////////////////////////////////////////////////////////////////////// ////Hin @@ -1538,35 +1538,35 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27( //////////////////////////////////////////////////////////////////////////////////// //back //////////////////////////////////////////////////////////////////////////////////// - VF::LBM::backwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); - VF::LBM::backwardChimera(mfaba, mfabb, mfabc, vvz, vz2); - VF::LBM::backwardChimera(mfaca, mfacb, mfacc, vvz, vz2); - VF::LBM::backwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); - VF::LBM::backwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); - VF::LBM::backwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); - VF::LBM::backwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); - VF::LBM::backwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); - VF::LBM::backwardChimera(mfcca, mfccb, mfccc, vvz, vz2); - - VF::LBM::backwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); - VF::LBM::backwardChimera(mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::backwardChimera(mfaac, mfabc, mfacc, vvy, vy2); - VF::LBM::backwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); - VF::LBM::backwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::backwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); - VF::LBM::backwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); - VF::LBM::backwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::backwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); - - VF::LBM::backwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); - VF::LBM::backwardChimera(mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::backwardChimera(mfaac, mfbac, mfcac, vvx, vx2); - VF::LBM::backwardChimera(mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::backwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::backwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::backwardChimera(mfaca, mfbca, mfcca, vvx, vx2); - VF::LBM::backwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::backwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); + vf::lbm::backwardChimera(mfaaa, mfaab, mfaac, vvz, vz2); + vf::lbm::backwardChimera(mfaba, mfabb, mfabc, vvz, vz2); + vf::lbm::backwardChimera(mfaca, mfacb, mfacc, vvz, vz2); + vf::lbm::backwardChimera(mfbaa, mfbab, mfbac, vvz, vz2); + vf::lbm::backwardChimera(mfbba, mfbbb, mfbbc, vvz, vz2); + vf::lbm::backwardChimera(mfbca, mfbcb, mfbcc, vvz, vz2); + vf::lbm::backwardChimera(mfcaa, mfcab, mfcac, vvz, vz2); + vf::lbm::backwardChimera(mfcba, mfcbb, mfcbc, vvz, vz2); + vf::lbm::backwardChimera(mfcca, mfccb, mfccc, vvz, vz2); + + vf::lbm::backwardChimera(mfaaa, mfaba, mfaca, vvy, vy2); + vf::lbm::backwardChimera(mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::backwardChimera(mfaac, mfabc, mfacc, vvy, vy2); + vf::lbm::backwardChimera(mfbaa, mfbba, mfbca, vvy, vy2); + vf::lbm::backwardChimera(mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::backwardChimera(mfbac, mfbbc, mfbcc, vvy, vy2); + vf::lbm::backwardChimera(mfcaa, mfcba, mfcca, vvy, vy2); + vf::lbm::backwardChimera(mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::backwardChimera(mfcac, mfcbc, mfccc, vvy, vy2); + + vf::lbm::backwardChimera(mfaaa, mfbaa, mfcaa, vvx, vx2); + vf::lbm::backwardChimera(mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::backwardChimera(mfaac, mfbac, mfcac, vvx, vx2); + vf::lbm::backwardChimera(mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::backwardChimera(mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::backwardChimera(mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::backwardChimera(mfaca, mfbca, mfcca, vvx, vx2); + vf::lbm::backwardChimera(mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::backwardChimera(mfacc, mfbcc, mfccc, vvx, vx2); //////////////////////////////////////////////////////////////////////////////////// mfcbb+=EQcbb; @@ -1930,43 +1930,43 @@ extern "C" __global__ void Cumulant_One_chim_Comp_SP_27( // mit 1/36, 1/9, 1/36, 1/9, 4/9, 1/9, 1/36, 1/9, 1/36 Konditionieren //////////////////////////////////////////////////////////////////////////////////// // Z - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, 36.0f, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::forwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, 36.0f, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::forwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, 2.25f, c4o9 ); - VF::LBM::forwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::forwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, 36.0f, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::forwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, 36.0f, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, 36.0f, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::forwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, 36.0f, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::forwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, 2.25f, c4o9 ); + vf::lbm::forwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::forwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, 36.0f, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::forwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, 36.0f, c1o36); //////////////////////////////////////////////////////////////////////////////////// // mit 1/6, 0, 1/18, 2/3, 0, 2/9, 1/6, 0, 1/18 Konditionieren //////////////////////////////////////////////////////////////////////////////////// // Y - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, 6.0f , c1o6 ); - VF::LBM::forwardChimera( mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, 18.0f, c1o18); - VF::LBM::forwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, 1.5f , c2o3 ); - VF::LBM::forwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, 4.5f , c2o9 ); - VF::LBM::forwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, 6.0f , c1o6 ); - VF::LBM::forwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, 18.0f, c1o18); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, 6.0f , c1o6 ); + vf::lbm::forwardChimera( mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, 18.0f, c1o18); + vf::lbm::forwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, 1.5f , c2o3 ); + vf::lbm::forwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, 4.5f , c2o9 ); + vf::lbm::forwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, 6.0f , c1o6 ); + vf::lbm::forwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, 18.0f, c1o18); //////////////////////////////////////////////////////////////////////////////////// // mit 1, 0, 1/3, 0, 0, 0, 1/3, 0, 1/9 Konditionieren //////////////////////////////////////////////////////////////////////////////////// // X - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); - VF::LBM::forwardChimera( mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, 3.0f, c1o3); - VF::LBM::forwardChimera( mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::forwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::forwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, 3.0f, c1o3); - VF::LBM::forwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, 9.0f, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); + vf::lbm::forwardChimera( mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, 3.0f, c1o3); + vf::lbm::forwardChimera( mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::forwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::forwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, 3.0f, c1o3); + vf::lbm::forwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, 9.0f, c1o9); //////////////////////////////////////////////////////////////////////////////////// // Cumulants @@ -2157,43 +2157,43 @@ extern "C" __global__ void Cumulant_One_chim_Comp_SP_27( //mit 1, 0, 1/3, 0, 0, 0, 1/3, 0, 1/9 Konditionieren //////////////////////////////////////////////////////////////////////////////////// // X - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); - VF::LBM::backwardChimera( mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, 3.0f, c1o3); - VF::LBM::backwardChimera( mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::backwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::backwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, 3.0f, c1o3); - VF::LBM::backwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, 9.0f, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); + vf::lbm::backwardChimera( mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, 3.0f, c1o3); + vf::lbm::backwardChimera( mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::backwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::backwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, 3.0f, c1o3); + vf::lbm::backwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, 9.0f, c1o9); //////////////////////////////////////////////////////////////////////////////////// //mit 1/6, 2/3, 1/6, 0, 0, 0, 1/18, 2/9, 1/18 Konditionieren //////////////////////////////////////////////////////////////////////////////////// // Y - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, 6.0f , c1o6 ); - VF::LBM::backwardChimera( mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, 18.0f, c1o18); - VF::LBM::backwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, 1.5f , c2o3 ); - VF::LBM::backwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, 4.5f , c2o9 ); - VF::LBM::backwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, 6.0f , c1o6 ); - VF::LBM::backwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, 18.0f, c1o18); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, 6.0f , c1o6 ); + vf::lbm::backwardChimera( mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, 18.0f, c1o18); + vf::lbm::backwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, 1.5f , c2o3 ); + vf::lbm::backwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, 4.5f , c2o9 ); + vf::lbm::backwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, 6.0f , c1o6 ); + vf::lbm::backwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, 18.0f, c1o18); //////////////////////////////////////////////////////////////////////////////////// //mit 1/36, 1/9, 1/36, 1/9, 4/9, 1/9, 1/36, 1/9, 1/36 Konditionieren //////////////////////////////////////////////////////////////////////////////////// // Z - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, 36.0f, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::backwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, 36.0f, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::backwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, 2.25f, c4o9 ); - VF::LBM::backwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::backwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, 36.0f, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, 9.0f , c1o9 ); - VF::LBM::backwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, 36.0f, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, 36.0f, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::backwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, 36.0f, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::backwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, 2.25f, c4o9 ); + vf::lbm::backwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::backwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, 36.0f, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, 9.0f , c1o9 ); + vf::lbm::backwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, 36.0f, c1o36); ////////////////////////////////////////////////////////////////////////////////////// real drhoPost = diff --git a/src/gpu/VirtualFluids_GPU/GPU/CumulantK17ChimeraKernel.cu b/src/gpu/VirtualFluids_GPU/GPU/CumulantK17ChimeraKernel.cu index be940fd37fd2ac401f37f9a82fdec3e9a827b4f7..6fb12ebdfd458a976e686e6010380aa9c1b2a436 100644 --- a/src/gpu/VirtualFluids_GPU/GPU/CumulantK17ChimeraKernel.cu +++ b/src/gpu/VirtualFluids_GPU/GPU/CumulantK17ChimeraKernel.cu @@ -33,11 +33,12 @@ /* Device code */ #include "LBM/LB.h" #include "LBM/D3Q27.h" -#include "Core/RealConstants.h" #include "math.h" - #include <lbm/CumulantChimeraPreCompiled.h> +#include <lbm/constants/NumericConstants.h> + +using namespace vf::lbm::constant; __device__ Distributions27 getDistributions27(real* distributions, unsigned int size_Mat, bool isEvenTimestep) @@ -131,69 +132,69 @@ struct DistributionWrapper __device__ void read() { - distribution.f[VF::LBM::DIR::PZZ] = (dist.f[dirE ])[k]; - distribution.f[VF::LBM::DIR::MZZ] = (dist.f[dirW ])[kw]; - distribution.f[VF::LBM::DIR::ZPZ] = (dist.f[dirN ])[k]; - distribution.f[VF::LBM::DIR::ZMZ] = (dist.f[dirS ])[ks]; - distribution.f[VF::LBM::DIR::ZZP] = (dist.f[dirT ])[k]; - distribution.f[VF::LBM::DIR::ZZM] = (dist.f[dirB ])[kb]; - distribution.f[VF::LBM::DIR::PPZ] = (dist.f[dirNE ])[k]; - distribution.f[VF::LBM::DIR::MMZ] = (dist.f[dirSW ])[ksw]; - distribution.f[VF::LBM::DIR::PMZ] = (dist.f[dirSE ])[ks]; - distribution.f[VF::LBM::DIR::MPZ] = (dist.f[dirNW ])[kw]; - distribution.f[VF::LBM::DIR::PZP] = (dist.f[dirTE ])[k]; - distribution.f[VF::LBM::DIR::MZM] = (dist.f[dirBW ])[kbw]; - distribution.f[VF::LBM::DIR::PZM] = (dist.f[dirBE ])[kb]; - distribution.f[VF::LBM::DIR::MZP] = (dist.f[dirTW ])[kw]; - distribution.f[VF::LBM::DIR::ZPP] = (dist.f[dirTN ])[k]; - distribution.f[VF::LBM::DIR::ZMM] = (dist.f[dirBS ])[kbs]; - distribution.f[VF::LBM::DIR::ZPM] = (dist.f[dirBN ])[kb]; - distribution.f[VF::LBM::DIR::ZMP] = (dist.f[dirTS ])[ks]; - distribution.f[VF::LBM::DIR::PPP] = (dist.f[dirTNE ])[k]; - distribution.f[VF::LBM::DIR::MPP] = (dist.f[dirTNW ])[kw]; - distribution.f[VF::LBM::DIR::PMP] = (dist.f[dirTSE ])[ks]; - distribution.f[VF::LBM::DIR::MMP] = (dist.f[dirTSW ])[ksw]; - distribution.f[VF::LBM::DIR::PPM] = (dist.f[dirBNE ])[kb]; - distribution.f[VF::LBM::DIR::MPM] = (dist.f[dirBNW ])[kbw]; - distribution.f[VF::LBM::DIR::PMM] = (dist.f[dirBSE ])[kbs]; - distribution.f[VF::LBM::DIR::MMM] = (dist.f[dirBSW ])[kbsw]; - distribution.f[VF::LBM::DIR::ZZZ] = (dist.f[dirREST])[k]; + distribution.f[vf::lbm::dir::PZZ] = (dist.f[dirE ])[k]; + distribution.f[vf::lbm::dir::MZZ] = (dist.f[dirW ])[kw]; + distribution.f[vf::lbm::dir::ZPZ] = (dist.f[dirN ])[k]; + distribution.f[vf::lbm::dir::ZMZ] = (dist.f[dirS ])[ks]; + distribution.f[vf::lbm::dir::ZZP] = (dist.f[dirT ])[k]; + distribution.f[vf::lbm::dir::ZZM] = (dist.f[dirB ])[kb]; + distribution.f[vf::lbm::dir::PPZ] = (dist.f[dirNE ])[k]; + distribution.f[vf::lbm::dir::MMZ] = (dist.f[dirSW ])[ksw]; + distribution.f[vf::lbm::dir::PMZ] = (dist.f[dirSE ])[ks]; + distribution.f[vf::lbm::dir::MPZ] = (dist.f[dirNW ])[kw]; + distribution.f[vf::lbm::dir::PZP] = (dist.f[dirTE ])[k]; + distribution.f[vf::lbm::dir::MZM] = (dist.f[dirBW ])[kbw]; + distribution.f[vf::lbm::dir::PZM] = (dist.f[dirBE ])[kb]; + distribution.f[vf::lbm::dir::MZP] = (dist.f[dirTW ])[kw]; + distribution.f[vf::lbm::dir::ZPP] = (dist.f[dirTN ])[k]; + distribution.f[vf::lbm::dir::ZMM] = (dist.f[dirBS ])[kbs]; + distribution.f[vf::lbm::dir::ZPM] = (dist.f[dirBN ])[kb]; + distribution.f[vf::lbm::dir::ZMP] = (dist.f[dirTS ])[ks]; + distribution.f[vf::lbm::dir::PPP] = (dist.f[dirTNE ])[k]; + distribution.f[vf::lbm::dir::MPP] = (dist.f[dirTNW ])[kw]; + distribution.f[vf::lbm::dir::PMP] = (dist.f[dirTSE ])[ks]; + distribution.f[vf::lbm::dir::MMP] = (dist.f[dirTSW ])[ksw]; + distribution.f[vf::lbm::dir::PPM] = (dist.f[dirBNE ])[kb]; + distribution.f[vf::lbm::dir::MPM] = (dist.f[dirBNW ])[kbw]; + distribution.f[vf::lbm::dir::PMM] = (dist.f[dirBSE ])[kbs]; + distribution.f[vf::lbm::dir::MMM] = (dist.f[dirBSW ])[kbsw]; + distribution.f[vf::lbm::dir::ZZZ] = (dist.f[dirREST])[k]; } __device__ void write() { - (dist.f[dirE ])[k] = distribution.f[VF::LBM::DIR::PZZ]; - (dist.f[dirW ])[kw] = distribution.f[VF::LBM::DIR::MZZ]; - (dist.f[dirN ])[k] = distribution.f[VF::LBM::DIR::ZPZ]; - (dist.f[dirS ])[ks] = distribution.f[VF::LBM::DIR::ZMZ]; - (dist.f[dirT ])[k] = distribution.f[VF::LBM::DIR::ZZP]; - (dist.f[dirB ])[kb] = distribution.f[VF::LBM::DIR::ZZM]; - (dist.f[dirNE ])[k] = distribution.f[VF::LBM::DIR::PPZ]; - (dist.f[dirSW ])[ksw] = distribution.f[VF::LBM::DIR::MMZ]; - (dist.f[dirSE ])[ks] = distribution.f[VF::LBM::DIR::PMZ]; - (dist.f[dirNW ])[kw] = distribution.f[VF::LBM::DIR::MPZ]; - (dist.f[dirTE ])[k] = distribution.f[VF::LBM::DIR::PZP]; - (dist.f[dirBW ])[kbw] = distribution.f[VF::LBM::DIR::MZM]; - (dist.f[dirBE ])[kb] = distribution.f[VF::LBM::DIR::PZM]; - (dist.f[dirTW ])[kw] = distribution.f[VF::LBM::DIR::MZP]; - (dist.f[dirTN ])[k] = distribution.f[VF::LBM::DIR::ZPP]; - (dist.f[dirBS ])[kbs] = distribution.f[VF::LBM::DIR::ZMM]; - (dist.f[dirBN ])[kb] = distribution.f[VF::LBM::DIR::ZPM]; - (dist.f[dirTS ])[ks] = distribution.f[VF::LBM::DIR::ZMP]; - (dist.f[dirTNE ])[k] = distribution.f[VF::LBM::DIR::PPP]; - (dist.f[dirTNW ])[kw] = distribution.f[VF::LBM::DIR::MPP]; - (dist.f[dirTSE ])[ks] = distribution.f[VF::LBM::DIR::PMP]; - (dist.f[dirTSW ])[ksw] = distribution.f[VF::LBM::DIR::MMP]; - (dist.f[dirBNE ])[kb] = distribution.f[VF::LBM::DIR::PPM]; - (dist.f[dirBNW ])[kbw] = distribution.f[VF::LBM::DIR::MPM]; - (dist.f[dirBSE ])[kbs] = distribution.f[VF::LBM::DIR::PMM]; - (dist.f[dirBSW ])[kbsw] = distribution.f[VF::LBM::DIR::MMM]; - (dist.f[dirREST])[k] = distribution.f[VF::LBM::DIR::ZZZ]; + (dist.f[dirE ])[k] = distribution.f[vf::lbm::dir::PZZ]; + (dist.f[dirW ])[kw] = distribution.f[vf::lbm::dir::MZZ]; + (dist.f[dirN ])[k] = distribution.f[vf::lbm::dir::ZPZ]; + (dist.f[dirS ])[ks] = distribution.f[vf::lbm::dir::ZMZ]; + (dist.f[dirT ])[k] = distribution.f[vf::lbm::dir::ZZP]; + (dist.f[dirB ])[kb] = distribution.f[vf::lbm::dir::ZZM]; + (dist.f[dirNE ])[k] = distribution.f[vf::lbm::dir::PPZ]; + (dist.f[dirSW ])[ksw] = distribution.f[vf::lbm::dir::MMZ]; + (dist.f[dirSE ])[ks] = distribution.f[vf::lbm::dir::PMZ]; + (dist.f[dirNW ])[kw] = distribution.f[vf::lbm::dir::MPZ]; + (dist.f[dirTE ])[k] = distribution.f[vf::lbm::dir::PZP]; + (dist.f[dirBW ])[kbw] = distribution.f[vf::lbm::dir::MZM]; + (dist.f[dirBE ])[kb] = distribution.f[vf::lbm::dir::PZM]; + (dist.f[dirTW ])[kw] = distribution.f[vf::lbm::dir::MZP]; + (dist.f[dirTN ])[k] = distribution.f[vf::lbm::dir::ZPP]; + (dist.f[dirBS ])[kbs] = distribution.f[vf::lbm::dir::ZMM]; + (dist.f[dirBN ])[kb] = distribution.f[vf::lbm::dir::ZPM]; + (dist.f[dirTS ])[ks] = distribution.f[vf::lbm::dir::ZMP]; + (dist.f[dirTNE ])[k] = distribution.f[vf::lbm::dir::PPP]; + (dist.f[dirTNW ])[kw] = distribution.f[vf::lbm::dir::MPP]; + (dist.f[dirTSE ])[ks] = distribution.f[vf::lbm::dir::PMP]; + (dist.f[dirTSW ])[ksw] = distribution.f[vf::lbm::dir::MMP]; + (dist.f[dirBNE ])[kb] = distribution.f[vf::lbm::dir::PPM]; + (dist.f[dirBNW ])[kbw] = distribution.f[vf::lbm::dir::MPM]; + (dist.f[dirBSE ])[kbs] = distribution.f[vf::lbm::dir::PMM]; + (dist.f[dirBSW ])[kbsw] = distribution.f[vf::lbm::dir::MMM]; + (dist.f[dirREST])[k] = distribution.f[vf::lbm::dir::ZZZ]; } Distributions27 dist; - VF::LBM::Distribution27 distribution; + vf::lbm::Distribution27 distribution; const uint k; const uint kw; @@ -262,7 +263,7 @@ extern "C" __global__ void Cumulant_K17_LBM_Device_Kernel( real level_forces[3]; getLevelForce(forces[0], forces[1], forces[2], level, level_forces); - VF::LBM::cumulantChimera(distributionWrapper.distribution, omega, level_forces); + vf::lbm::cumulantChimera(distributionWrapper.distribution, omega, level_forces); distributionWrapper.write(); } @@ -420,37 +421,37 @@ extern "C" __global__ void Cumulant_K17_LBM_Device_Kernel_old( //! //////////////////////////////////////////////////////////////////////////////////// // Z - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); - VF::LBM::forwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); + vf::lbm::forwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); //////////////////////////////////////////////////////////////////////////////////// // Y - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); - VF::LBM::forwardChimera( mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); - VF::LBM::forwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); - VF::LBM::forwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); - VF::LBM::forwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); - VF::LBM::forwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); + vf::lbm::forwardChimera( mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); + vf::lbm::forwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); + vf::lbm::forwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); + vf::lbm::forwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); + vf::lbm::forwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); //////////////////////////////////////////////////////////////////////////////////// // X - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); - VF::LBM::forwardChimera( mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); - VF::LBM::forwardChimera( mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::forwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::forwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); - VF::LBM::forwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c3o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); + vf::lbm::forwardChimera( mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); + vf::lbm::forwardChimera( mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::forwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::forwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); + vf::lbm::forwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c3o1, c1o9); //////////////////////////////////////////////////////////////////////////////////// //! - Setting relaxation rates for non-hydrodynamic cumulants (default values). Variable names and equations according to //! <a href="https://doi.org/10.1016/j.jcp.2017.05.040"><b>[ M. Geier et al. (2017), DOI:10.1016/j.jcp.2017.05 040 ]</b></a> @@ -674,37 +675,37 @@ extern "C" __global__ void Cumulant_K17_LBM_Device_Kernel_old( //! //////////////////////////////////////////////////////////////////////////////////// // X - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); - VF::LBM::backwardChimera( mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); - VF::LBM::backwardChimera( mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::backwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::backwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); - VF::LBM::backwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); + vf::lbm::backwardChimera( mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); + vf::lbm::backwardChimera( mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::backwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::backwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); + vf::lbm::backwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c9o1, c1o9); //////////////////////////////////////////////////////////////////////////////////// // Y - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); - VF::LBM::backwardChimera( mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); - VF::LBM::backwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); - VF::LBM::backwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); - VF::LBM::backwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); - VF::LBM::backwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); + vf::lbm::backwardChimera( mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); + vf::lbm::backwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); + vf::lbm::backwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); + vf::lbm::backwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); + vf::lbm::backwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); //////////////////////////////////////////////////////////////////////////////////// // Z - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); - VF::LBM::backwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); + vf::lbm::backwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); //////////////////////////////////////////////////////////////////////////////////// //! - Write distributions: style of reading and writing the distributions from/to diff --git a/src/lbm/Chimera.h b/src/lbm/Chimera.h index b96992c16eb75f81845eccf9e05f9eda5a22ca5a..c99b888b7855f36ecc7ad174157ce6932f91f04c 100644 --- a/src/lbm/Chimera.h +++ b/src/lbm/Chimera.h @@ -9,13 +9,16 @@ #endif #include <basics/Core/DataTypes.h> -#include <basics/Core/RealConstants.h> -namespace VF +#include <lbm/constants/NumericConstants.h> + +namespace vf { -namespace LBM +namespace lbm { + using namespace constant; + //////////////////////////////////////////////////////////////////////////////// //! \brief forward chimera transformation \ref forwardInverseChimeraWithK //! Transformation from distributions to central moments according to Eq. (6)-(14) in diff --git a/src/lbm/ChimeraTests.cpp b/src/lbm/ChimeraTests.cpp index 9395cb587d21048bd6d4aea4e23023ba5919b51e..01abbe82764c276f53a4cdd479d333536199c3a9 100644 --- a/src/lbm/ChimeraTests.cpp +++ b/src/lbm/ChimeraTests.cpp @@ -23,7 +23,7 @@ TEST(ChimeraTest, forwardInverseChimeraWithK) const real K = 1.; const real Kinverse = 1 / K; - VF::LBM::forwardInverseChimeraWithK(mfa, mfb, mfc, vv, v2, K, Kinverse); + vf::lbm::forwardInverseChimeraWithK(mfa, mfb, mfc, vv, v2, K, Kinverse); EXPECT_THAT(mfa, REAL_EQ(3.)); // mfa + mfb + mfc EXPECT_THAT(mfb, REAL_EQ(-4.)); // -(mfa + mfb + mfc + 1) @@ -44,7 +44,7 @@ TEST(ChimeraTest, backwardInverseChimeraWithK) const real K = 1.; const real Kinverse = 1 / K; - VF::LBM::backwardInverseChimeraWithK(mfa, mfb, mfc, vv, v2, K, Kinverse); + vf::lbm::backwardInverseChimeraWithK(mfa, mfb, mfc, vv, v2, K, Kinverse); // resulting in the start values from the test above. EXPECT_THAT(mfa, REAL_EQ(1.)); @@ -64,7 +64,7 @@ TEST(ChimeraTest, forwardChimera) const real vv = 1.; const real v2 = 1.; - VF::LBM::forwardChimera(mfa, mfb, mfc, vv, v2); + vf::lbm::forwardChimera(mfa, mfb, mfc, vv, v2); EXPECT_THAT(mfa, REAL_EQ(3.)); // mfa + mfb + mfc EXPECT_THAT(mfb, REAL_EQ(-3.)); // -(mfa + mfb + mfc) @@ -82,7 +82,7 @@ TEST(ChimeraTest, backwardChimera) const real vv = 1.; const real v2 = 1.; - VF::LBM::backwardChimera(mfa, mfb, mfc, vv, v2); + vf::lbm::backwardChimera(mfa, mfb, mfc, vv, v2); // resulting in the start values from the test above. EXPECT_THAT(mfa, REAL_EQ(1.)); @@ -104,7 +104,7 @@ TEST(ChimeraTest, forwardChimeraWithK) const real K = 1.; - VF::LBM::forwardChimeraWithK(mfa, mfb, mfc, vv, v2, K); + vf::lbm::forwardChimeraWithK(mfa, mfb, mfc, vv, v2, K); EXPECT_THAT(mfa, REAL_EQ(3.)); // mfa + mfb + mfc EXPECT_THAT(mfb, REAL_EQ(-4.)); // -(mfa + mfb + mfc) @@ -124,7 +124,7 @@ TEST(ChimeraTest, backwardChimeraWithK) const real K = 1.; - VF::LBM::backwardChimeraWithK(mfa, mfb, mfc, vv, v2, K); + vf::lbm::backwardChimeraWithK(mfa, mfb, mfc, vv, v2, K); // resulting in the start values from the test above. EXPECT_THAT(mfa, REAL_EQ(1.)); diff --git a/src/lbm/CumulantChimera.h b/src/lbm/CumulantChimera.h index f3d09065db0f021ae9237764ddd0fffd0ab8e1ba..40797d5e0ed07abda59b14879ad7bd80f0bbb95d 100644 --- a/src/lbm/CumulantChimera.h +++ b/src/lbm/CumulantChimera.h @@ -17,9 +17,9 @@ #include "Chimera.h" #include "MacroscopicQuantities.h" -namespace VF +namespace vf { -namespace LBM +namespace lbm { struct Distribution27 diff --git a/src/lbm/CumulantChimeraPreCompiled.cpp b/src/lbm/CumulantChimeraPreCompiled.cpp index b0a3e6254fb2d8d7d51b6e8a65b0422d273422f7..f123d06f6f068023d3d9f5e90ed4f679c462c695 100644 --- a/src/lbm/CumulantChimeraPreCompiled.cpp +++ b/src/lbm/CumulantChimeraPreCompiled.cpp @@ -5,15 +5,20 @@ #include <basics/Core/DataTypes.h> #include <basics/Core/RealConstants.h> +#include "constants/NumericConstants.h" + + #include "D3Q27.h" #include "Chimera.h" #include "MacroscopicQuantities.h" -namespace VF +namespace vf { -namespace LBM +namespace lbm { + using namespace constant; + ////////////////////////////////////////////////////////////////////////// //! Cumulant K17 Kernel is based on \ref @@ -28,33 +33,33 @@ __host__ __device__ void cumulantChimera(Distribution27& distribution, real omeg //! stored arrays dependent on timestep is based on the esoteric twist algorithm //! <a href="https://doi.org/10.3390/computation5020019"><b>[ M. Geier et al. (2017), DOI:10.3390/computation5020019 ]</b></a> //! - real mfcbb = distribution.f[DIR::PZZ]; - real mfabb = distribution.f[DIR::MZZ]; - real mfbcb = distribution.f[DIR::ZPZ]; - real mfbab = distribution.f[DIR::ZMZ]; - real mfbbc = distribution.f[DIR::ZZP]; - real mfbba = distribution.f[DIR::ZZM]; - real mfccb = distribution.f[DIR::PPZ]; - real mfaab = distribution.f[DIR::MMZ]; - real mfcab = distribution.f[DIR::PMZ]; - real mfacb = distribution.f[DIR::MPZ]; - real mfcbc = distribution.f[DIR::PZP]; - real mfaba = distribution.f[DIR::MZM]; - real mfcba = distribution.f[DIR::PZM]; - real mfabc = distribution.f[DIR::MZP]; - real mfbcc = distribution.f[DIR::ZPP]; - real mfbaa = distribution.f[DIR::ZMM]; - real mfbca = distribution.f[DIR::ZPM]; - real mfbac = distribution.f[DIR::ZMP]; - real mfccc = distribution.f[DIR::PPP]; - real mfacc = distribution.f[DIR::MPP]; - real mfcac = distribution.f[DIR::PMP]; - real mfaac = distribution.f[DIR::MMP]; - real mfcca = distribution.f[DIR::PPM]; - real mfaca = distribution.f[DIR::MPM]; - real mfcaa = distribution.f[DIR::PMM]; - real mfaaa = distribution.f[DIR::MMM]; - real mfbbb = distribution.f[DIR::ZZZ]; + real mfcbb = distribution.f[dir::PZZ]; + real mfabb = distribution.f[dir::MZZ]; + real mfbcb = distribution.f[dir::ZPZ]; + real mfbab = distribution.f[dir::ZMZ]; + real mfbbc = distribution.f[dir::ZZP]; + real mfbba = distribution.f[dir::ZZM]; + real mfccb = distribution.f[dir::PPZ]; + real mfaab = distribution.f[dir::MMZ]; + real mfcab = distribution.f[dir::PMZ]; + real mfacb = distribution.f[dir::MPZ]; + real mfcbc = distribution.f[dir::PZP]; + real mfaba = distribution.f[dir::MZM]; + real mfcba = distribution.f[dir::PZM]; + real mfabc = distribution.f[dir::MZP]; + real mfbcc = distribution.f[dir::ZPP]; + real mfbaa = distribution.f[dir::ZMM]; + real mfbca = distribution.f[dir::ZPM]; + real mfbac = distribution.f[dir::ZMP]; + real mfccc = distribution.f[dir::PPP]; + real mfacc = distribution.f[dir::MPP]; + real mfcac = distribution.f[dir::PMP]; + real mfaac = distribution.f[dir::MMP]; + real mfcca = distribution.f[dir::PPM]; + real mfaca = distribution.f[dir::MPM]; + real mfcaa = distribution.f[dir::PMM]; + real mfaaa = distribution.f[dir::MMM]; + real mfbbb = distribution.f[dir::ZZZ]; //////////////////////////////////////////////////////////////////////////////////// //! - Calculate density and velocity using pyramid summation for low round-off errors as in Eq. (J1)-(J3) \ref @@ -106,37 +111,37 @@ __host__ __device__ void cumulantChimera(Distribution27& distribution, real omeg //! //////////////////////////////////////////////////////////////////////////////////// // Z - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); - VF::LBM::forwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); - VF::LBM::forwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); - VF::LBM::forwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); + vf::lbm::forwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); + vf::lbm::forwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); //////////////////////////////////////////////////////////////////////////////////// // Y - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); - VF::LBM::forwardChimera( mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); - VF::LBM::forwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); - VF::LBM::forwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); - VF::LBM::forwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); - VF::LBM::forwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::forwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); + vf::lbm::forwardChimera( mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); + vf::lbm::forwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); + vf::lbm::forwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); + vf::lbm::forwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); + vf::lbm::forwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::forwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); //////////////////////////////////////////////////////////////////////////////////// // X - Dir - VF::LBM::forwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); - VF::LBM::forwardChimera( mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); - VF::LBM::forwardChimera( mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::forwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::forwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); - VF::LBM::forwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::forwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c3o1, c1o9); + vf::lbm::forwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); + vf::lbm::forwardChimera( mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); + vf::lbm::forwardChimera( mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::forwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::forwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); + vf::lbm::forwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::forwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c3o1, c1o9); //////////////////////////////////////////////////////////////////////////////////// //! - Setting relaxation rates for non-hydrodynamic cumulants (default values). Variable names and equations according to //! <a href="https://doi.org/10.1016/j.jcp.2017.05.040"><b>[ M. Geier et al. (2017), DOI:10.1016/j.jcp.2017.05 040 ]</b></a> @@ -360,37 +365,37 @@ __host__ __device__ void cumulantChimera(Distribution27& distribution, real omeg //! //////////////////////////////////////////////////////////////////////////////////// // X - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); - VF::LBM::backwardChimera( mfaba, mfbba, mfcba, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); - VF::LBM::backwardChimera( mfaab, mfbab, mfcab, vvx, vx2); - VF::LBM::backwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); - VF::LBM::backwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); - VF::LBM::backwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); - VF::LBM::backwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfbaa, mfcaa, vvx, vx2, c1o1, c1o1); + vf::lbm::backwardChimera( mfaba, mfbba, mfcba, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfaca, mfbca, mfcca, vvx, vx2, c3o1, c1o3); + vf::lbm::backwardChimera( mfaab, mfbab, mfcab, vvx, vx2); + vf::lbm::backwardChimera( mfabb, mfbbb, mfcbb, vvx, vx2); + vf::lbm::backwardChimera( mfacb, mfbcb, mfccb, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfaac, mfbac, mfcac, vvx, vx2, c3o1, c1o3); + vf::lbm::backwardChimera( mfabc, mfbbc, mfcbc, vvx, vx2); + vf::lbm::backwardInverseChimeraWithK(mfacc, mfbcc, mfccc, vvx, vx2, c9o1, c1o9); //////////////////////////////////////////////////////////////////////////////////// // Y - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); - VF::LBM::backwardChimera( mfaab, mfabb, mfacb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); - VF::LBM::backwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); - VF::LBM::backwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); - VF::LBM::backwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); - VF::LBM::backwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); - VF::LBM::backwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfaba, mfaca, vvy, vy2, c6o1, c1o6); + vf::lbm::backwardChimera( mfaab, mfabb, mfacb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfaac, mfabc, mfacc, vvy, vy2, c18o1, c1o18); + vf::lbm::backwardInverseChimeraWithK(mfbaa, mfbba, mfbca, vvy, vy2, c3o2, c2o3); + vf::lbm::backwardChimera( mfbab, mfbbb, mfbcb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfbac, mfbbc, mfbcc, vvy, vy2, c9o2, c2o9); + vf::lbm::backwardInverseChimeraWithK(mfcaa, mfcba, mfcca, vvy, vy2, c6o1, c1o6); + vf::lbm::backwardChimera( mfcab, mfcbb, mfccb, vvy, vy2); + vf::lbm::backwardInverseChimeraWithK(mfcac, mfcbc, mfccc, vvy, vy2, c18o1, c1o18); //////////////////////////////////////////////////////////////////////////////////// // Z - Dir - VF::LBM::backwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); - VF::LBM::backwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); - VF::LBM::backwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); - VF::LBM::backwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfaaa, mfaab, mfaac, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfaba, mfabb, mfabc, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfaca, mfacb, mfacc, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfbaa, mfbab, mfbac, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfbba, mfbbb, mfbbc, vvz, vz2, c9o4, c4o9); + vf::lbm::backwardInverseChimeraWithK(mfbca, mfbcb, mfbcc, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfcaa, mfcab, mfcac, vvz, vz2, c36o1, c1o36); + vf::lbm::backwardInverseChimeraWithK(mfcba, mfcbb, mfcbc, vvz, vz2, c9o1, c1o9); + vf::lbm::backwardInverseChimeraWithK(mfcca, mfccb, mfccc, vvz, vz2, c36o1, c1o36); //////////////////////////////////////////////////////////////////////////////////// @@ -398,33 +403,33 @@ __host__ __device__ void cumulantChimera(Distribution27& distribution, real omeg //! stored arrays dependent on timestep is based on the esoteric twist algorithm //! <a href="https://doi.org/10.3390/computation5020019"><b>[ M. Geier et al. (2017), DOI:10.3390/computation5020019 ]</b></a> //! - distribution.f[VF::LBM::DIR::MZZ] = mfcbb; - distribution.f[VF::LBM::DIR::PZZ] = mfabb; - distribution.f[VF::LBM::DIR::ZMZ] = mfbcb; - distribution.f[VF::LBM::DIR::ZPZ] = mfbab; - distribution.f[VF::LBM::DIR::ZZM] = mfbbc; - distribution.f[VF::LBM::DIR::ZZP] = mfbba; - distribution.f[VF::LBM::DIR::MMZ] = mfccb; - distribution.f[VF::LBM::DIR::PPZ] = mfaab; - distribution.f[VF::LBM::DIR::MPZ] = mfcab; - distribution.f[VF::LBM::DIR::PMZ] = mfacb; - distribution.f[VF::LBM::DIR::MZM] = mfcbc; - distribution.f[VF::LBM::DIR::PZP] = mfaba; - distribution.f[VF::LBM::DIR::MZP] = mfcba; - distribution.f[VF::LBM::DIR::PZM] = mfabc; - distribution.f[VF::LBM::DIR::ZMM] = mfbcc; - distribution.f[VF::LBM::DIR::ZPP] = mfbaa; - distribution.f[VF::LBM::DIR::ZMP] = mfbca; - distribution.f[VF::LBM::DIR::ZPM] = mfbac; - distribution.f[VF::LBM::DIR::MMM] = mfccc; - distribution.f[VF::LBM::DIR::PMM] = mfacc; - distribution.f[VF::LBM::DIR::MPM] = mfcac; - distribution.f[VF::LBM::DIR::PPM] = mfaac; - distribution.f[VF::LBM::DIR::MMP] = mfcca; - distribution.f[VF::LBM::DIR::PMP] = mfaca; - distribution.f[VF::LBM::DIR::MPP] = mfcaa; - distribution.f[VF::LBM::DIR::PPP] = mfaaa; - distribution.f[VF::LBM::DIR::ZZZ] = mfbbb; + distribution.f[vf::lbm::dir::MZZ] = mfcbb; + distribution.f[vf::lbm::dir::PZZ] = mfabb; + distribution.f[vf::lbm::dir::ZMZ] = mfbcb; + distribution.f[vf::lbm::dir::ZPZ] = mfbab; + distribution.f[vf::lbm::dir::ZZM] = mfbbc; + distribution.f[vf::lbm::dir::ZZP] = mfbba; + distribution.f[vf::lbm::dir::MMZ] = mfccb; + distribution.f[vf::lbm::dir::PPZ] = mfaab; + distribution.f[vf::lbm::dir::MPZ] = mfcab; + distribution.f[vf::lbm::dir::PMZ] = mfacb; + distribution.f[vf::lbm::dir::MZM] = mfcbc; + distribution.f[vf::lbm::dir::PZP] = mfaba; + distribution.f[vf::lbm::dir::MZP] = mfcba; + distribution.f[vf::lbm::dir::PZM] = mfabc; + distribution.f[vf::lbm::dir::ZMM] = mfbcc; + distribution.f[vf::lbm::dir::ZPP] = mfbaa; + distribution.f[vf::lbm::dir::ZMP] = mfbca; + distribution.f[vf::lbm::dir::ZPM] = mfbac; + distribution.f[vf::lbm::dir::MMM] = mfccc; + distribution.f[vf::lbm::dir::PMM] = mfacc; + distribution.f[vf::lbm::dir::MPM] = mfcac; + distribution.f[vf::lbm::dir::PPM] = mfaac; + distribution.f[vf::lbm::dir::MMP] = mfcca; + distribution.f[vf::lbm::dir::PMP] = mfaca; + distribution.f[vf::lbm::dir::MPP] = mfcaa; + distribution.f[vf::lbm::dir::PPP] = mfaaa; + distribution.f[vf::lbm::dir::ZZZ] = mfbbb; } diff --git a/src/lbm/CumulantChimeraPreCompiled.h b/src/lbm/CumulantChimeraPreCompiled.h index f76e14ac9d2090089cd9f8362fe24982a7953d52..bda6ca960650648d3c564faa7cbf7f426a199f42 100644 --- a/src/lbm/CumulantChimeraPreCompiled.h +++ b/src/lbm/CumulantChimeraPreCompiled.h @@ -17,11 +17,12 @@ #include "Chimera.h" #include "MacroscopicQuantities.h" -namespace VF +namespace vf { -namespace LBM +namespace lbm { + struct Distribution27 { real f[27]; diff --git a/src/lbm/D3Q27.h b/src/lbm/D3Q27.h index 4eaac9f7fba6edc4c3c3439ed5c299e04f1724df..0b2cbfdd44e84af590fa2c2be4bf319cbfd4c815 100644 --- a/src/lbm/D3Q27.h +++ b/src/lbm/D3Q27.h @@ -1,11 +1,11 @@ #ifndef LBM_D3Q27_H #define LBM_D3Q27_H -namespace VF +namespace vf { -namespace LBM +namespace lbm { -namespace DIR +namespace dir { static constexpr int E = 0; diff --git a/src/lbm/MacroscopicQuantities.h b/src/lbm/MacroscopicQuantities.h index 16650075442e242d60a9a08506ff43ee6e024709..e426c51b27d0003471e1a421107ab01440695db3 100644 --- a/src/lbm/MacroscopicQuantities.h +++ b/src/lbm/MacroscopicQuantities.h @@ -12,38 +12,38 @@ #include "D3Q27.h" -namespace VF +namespace vf { -namespace LBM +namespace lbm { inline __host__ __device__ real getDensity(const real *const &f /*[27]*/) { - return ((f[DIR::TNE] + f[DIR::BSW]) + (f[DIR::TSE] + f[DIR::BNW])) + ((f[DIR::BSE] + f[DIR::TNW]) + (f[DIR::TSW] + f[DIR::BNE])) + - (((f[DIR::NE] + f[DIR::SW]) + (f[DIR::SE] + f[DIR::NW])) + ((f[DIR::TE] + f[DIR::BW]) + (f[DIR::BE] + f[DIR::TW])) + - ((f[DIR::BN] + f[DIR::TS]) + (f[DIR::TN] + f[DIR::BS]))) + - ((f[DIR::E] + f[DIR::W]) + (f[DIR::N] + f[DIR::S]) + (f[DIR::T] + f[DIR::B])) + f[DIR::REST]; + return ((f[dir::TNE] + f[dir::BSW]) + (f[dir::TSE] + f[dir::BNW])) + ((f[dir::BSE] + f[dir::TNW]) + (f[dir::TSW] + f[dir::BNE])) + + (((f[dir::NE] + f[dir::SW]) + (f[dir::SE] + f[dir::NW])) + ((f[dir::TE] + f[dir::BW]) + (f[dir::BE] + f[dir::TW])) + + ((f[dir::BN] + f[dir::TS]) + (f[dir::TN] + f[dir::BS]))) + + ((f[dir::E] + f[dir::W]) + (f[dir::N] + f[dir::S]) + (f[dir::T] + f[dir::B])) + f[dir::REST]; } inline __host__ __device__ real getIncompressibleVelocityX1(const real *const &f /*[27]*/) { - return ((((f[DIR::TNE] - f[DIR::BSW]) + (f[DIR::TSE] - f[DIR::BNW])) + ((f[DIR::BSE] - f[DIR::TNW]) + (f[DIR::BNE] - f[DIR::TSW]))) + - (((f[DIR::BE] - f[DIR::TW]) + (f[DIR::TE] - f[DIR::BW])) + ((f[DIR::SE] - f[DIR::NW]) + (f[DIR::NE] - f[DIR::SW]))) + (f[DIR::E] - f[DIR::W])); + return ((((f[dir::TNE] - f[dir::BSW]) + (f[dir::TSE] - f[dir::BNW])) + ((f[dir::BSE] - f[dir::TNW]) + (f[dir::BNE] - f[dir::TSW]))) + + (((f[dir::BE] - f[dir::TW]) + (f[dir::TE] - f[dir::BW])) + ((f[dir::SE] - f[dir::NW]) + (f[dir::NE] - f[dir::SW]))) + (f[dir::E] - f[dir::W])); } inline __host__ __device__ real getIncompressibleVelocityX2(const real *const &f /*[27]*/) { - return ((((f[DIR::TNE] - f[DIR::BSW]) + (f[DIR::BNW] - f[DIR::TSE])) + ((f[DIR::TNW] - f[DIR::BSE]) + (f[DIR::BNE] - f[DIR::TSW]))) + - (((f[DIR::BN] - f[DIR::TS]) + (f[DIR::TN] - f[DIR::BS])) + ((f[DIR::NW] - f[DIR::SE]) + (f[DIR::NE] - f[DIR::SW]))) + (f[DIR::N] - f[DIR::S])); + return ((((f[dir::TNE] - f[dir::BSW]) + (f[dir::BNW] - f[dir::TSE])) + ((f[dir::TNW] - f[dir::BSE]) + (f[dir::BNE] - f[dir::TSW]))) + + (((f[dir::BN] - f[dir::TS]) + (f[dir::TN] - f[dir::BS])) + ((f[dir::NW] - f[dir::SE]) + (f[dir::NE] - f[dir::SW]))) + (f[dir::N] - f[dir::S])); } inline __host__ __device__ real getIncompressibleVelocityX3(const real *const &f /*[27]*/) { - return ((((f[DIR::TNE] - f[DIR::BSW]) + (f[DIR::TSE] - f[DIR::BNW])) + ((f[DIR::TNW] - f[DIR::BSE]) + (f[DIR::TSW] - f[DIR::BNE]))) + - (((f[DIR::TS] - f[DIR::BN]) + (f[DIR::TN] - f[DIR::BS])) + ((f[DIR::TW] - f[DIR::BE]) + (f[DIR::TE] - f[DIR::BW]))) + (f[DIR::T] - f[DIR::B])); + return ((((f[dir::TNE] - f[dir::BSW]) + (f[dir::TSE] - f[dir::BNW])) + ((f[dir::TNW] - f[dir::BSE]) + (f[dir::TSW] - f[dir::BNE]))) + + (((f[dir::TS] - f[dir::BN]) + (f[dir::TN] - f[dir::BS])) + ((f[dir::TW] - f[dir::BE]) + (f[dir::TE] - f[dir::BW]))) + (f[dir::T] - f[dir::B])); } diff --git a/src/lbm/MacroscopicQuantitiesTests.cpp b/src/lbm/MacroscopicQuantitiesTests.cpp index 96464eb229c3edf4ccaf50522ddc8e20045d3717..59c2b0c13d51db5ada8018beb07e1a5f3fd58061 100644 --- a/src/lbm/MacroscopicQuantitiesTests.cpp +++ b/src/lbm/MacroscopicQuantitiesTests.cpp @@ -9,11 +9,12 @@ */ real f[27] = {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}; +using namespace vf::lbm; TEST(MacroscopicQuantitiesTest, check_density) { - const double density = VF::LBM::getDensity(f); + const double density = getDensity(f); const double expected_density = 27.; ASSERT_THAT(density, testing::DoubleEq(expected_density)); @@ -21,9 +22,9 @@ TEST(MacroscopicQuantitiesTest, check_density) TEST(MacroscopicQuantitiesTest, whenFsAreEqual_velocityInEachDirectionShouldBeZero) { - const double velocityX1 = VF::LBM::getIncompressibleVelocityX1(f); - const double velocityX2 = VF::LBM::getIncompressibleVelocityX2(f); - const double velocityX3 = VF::LBM::getIncompressibleVelocityX3(f); + const double velocityX1 = getIncompressibleVelocityX1(f); + const double velocityX2 = getIncompressibleVelocityX2(f); + const double velocityX3 = getIncompressibleVelocityX3(f); const double expected_velocity = 0.; EXPECT_THAT(velocityX1, testing::DoubleEq(expected_velocity)); @@ -33,11 +34,11 @@ TEST(MacroscopicQuantitiesTest, whenFsAreEqual_velocityInEachDirectionShouldBeZe TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Eis2_velocityInX1ShouldBeOne) { - f[VF::LBM::DIR::E] = 2.; + f[dir::E] = 2.; - const double velocityX1 = VF::LBM::getIncompressibleVelocityX1(f); - const double velocityX2 = VF::LBM::getIncompressibleVelocityX2(f); - const double velocityX3 = VF::LBM::getIncompressibleVelocityX3(f); + const double velocityX1 = getIncompressibleVelocityX1(f); + const double velocityX2 = getIncompressibleVelocityX2(f); + const double velocityX3 = getIncompressibleVelocityX3(f); const double expected_velocity_x1 = 1.; const double expected_velocity_x2 = 0.; @@ -50,9 +51,9 @@ TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Eis2_velocityInX1ShouldBeO TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Nis2_velocityInX2ShouldBeOne) { - f[VF::LBM::DIR::N] = 2.; + f[dir::N] = 2.; - const double velocity = VF::LBM::getIncompressibleVelocityX2(f); + const double velocity = getIncompressibleVelocityX2(f); const double expected_velocity = 1.; ASSERT_THAT(velocity, testing::DoubleEq(expected_velocity)); @@ -61,9 +62,9 @@ TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Nis2_velocityInX2ShouldBeO TEST(MacroscopicQuantitiesTest, givenAllFsAreOne_when_Tis2_velocityInX3ShouldBeOne) { - f[VF::LBM::DIR::T] = 2.; + f[dir::T] = 2.; - const double velocity = VF::LBM::getIncompressibleVelocityX3(f); + const double velocity = getIncompressibleVelocityX3(f); const double expected_velocity = 1.; ASSERT_THAT(velocity, testing::DoubleEq(expected_velocity));