From df5248ca84fb0800c24ed5dae6703328b1c80218 Mon Sep 17 00:00:00 2001
From: Kutscher <kutscher@irmb.tu-bs.de>
Date: Mon, 13 Nov 2023 16:14:36 +0100
Subject: [PATCH] fixes merge of upstream into develop

---
 apps/cpu/DamBreak/CMakeLists.txt              |   2 +-
 apps/cpu/DamBreak/main.cpp                    |   2 +-
 apps/cpu/FallingSphere/FallingSphere.cpp      |   1 -
 apps/cpu/JetBreakup/JetBreakup.cpp            |   3 +-
 apps/cpu/LiggghtsApp/LiggghtsApp.cpp          |   1 -
 .../cpu/MultiphaseSymmetryTest/CMakeLists.txt |   2 +-
 apps/cpu/MultiphaseSymmetryTest/droplet.cpp   |   2 +-
 apps/cpu/Nozzle/nozzleSinglePhase.cpp         |   5 +-
 .../cpu/NozzleMultiphase/nozzleMultiPhase.cpp |   4 -
 .../LBM/IBsharpInterfaceLBMKernel.cpp         |   6 +-
 .../MultiphasePressureBCStrategy.cpp          |  12 +-
 .../MultiphaseScaleDistributionLBMKernel.cpp  | 225 +++++++++---------
 .../MultiphaseScaleDistributionLBMKernel.h    |  16 +-
 .../NonReflectingInflowBCStrategy.cpp         |   1 -
 .../NonReflectingOutflowBCStrategy.cpp        |   1 -
 ...lectingOutflowWithRelaxationBCStrategy.cpp |   1 -
 .../BoundaryConditions/SlipBCStrategy.cpp     |   1 -
 .../InSituVTKSimulationObserver.cpp           |   2 +-
 18 files changed, 138 insertions(+), 149 deletions(-)

diff --git a/apps/cpu/DamBreak/CMakeLists.txt b/apps/cpu/DamBreak/CMakeLists.txt
index 7fd74ee6c..685499d26 100644
--- a/apps/cpu/DamBreak/CMakeLists.txt
+++ b/apps/cpu/DamBreak/CMakeLists.txt
@@ -1,3 +1,3 @@
 PROJECT(DamBreak)
 
-vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluidsCore basics ${MPI_CXX_LIBRARIES} MultiphaseFlow NonNewtonianFluids FILES main.cpp )
+vf_add_library(BUILDTYPE binary PRIVATE_LINK cpu_core basics ${MPI_CXX_LIBRARIES} MultiphaseFlow NonNewtonianFluids FILES main.cpp )
diff --git a/apps/cpu/DamBreak/main.cpp b/apps/cpu/DamBreak/main.cpp
index d5ae01b02..e38fadde8 100644
--- a/apps/cpu/DamBreak/main.cpp
+++ b/apps/cpu/DamBreak/main.cpp
@@ -203,7 +203,7 @@ void run(string configname)
         grid->setPeriodicX3(true);
         grid->setGhostLayerWidth(2);
 
-        SPtr<Grid3DVisitor> metisVisitor(new MetisPartitioningGridVisitor(comm, MetisPartitioningGridVisitor::LevelBased, DIR_MMM, MetisPartitioner::RECURSIVE));
+        SPtr<Grid3DVisitor> metisVisitor(new MetisPartitioningGridVisitor(comm, MetisPartitioningGridVisitor::LevelBased, dMMM, MetisPartitioner::RECURSIVE));
 
         //////////////////////////////////////////////////////////////////////////
         // restart
diff --git a/apps/cpu/FallingSphere/FallingSphere.cpp b/apps/cpu/FallingSphere/FallingSphere.cpp
index 7dfaedc9d..8d08c0864 100644
--- a/apps/cpu/FallingSphere/FallingSphere.cpp
+++ b/apps/cpu/FallingSphere/FallingSphere.cpp
@@ -45,7 +45,6 @@ int main(int argc, char *argv[])
     //////////////////////////////////////////////////////////////////////////////////
     // BC visitor
     BoundaryConditionsBlockVisitor bcVisitor;
-    bcVisitor.addBC(noSlipBC);
 
     SPtr<Grid3D> grid = make_shared<Grid3D>(comm);
     grid->setPeriodicX1(true);
diff --git a/apps/cpu/JetBreakup/JetBreakup.cpp b/apps/cpu/JetBreakup/JetBreakup.cpp
index 5d729a47d..a23f47b09 100644
--- a/apps/cpu/JetBreakup/JetBreakup.cpp
+++ b/apps/cpu/JetBreakup/JetBreakup.cpp
@@ -313,7 +313,8 @@ void run(string configname)
         //SPtr<BC> velBCF2(new MultiphaseVelocityBC(true, false, false, fctF2, phiH, startTime, endTime));
         SPtr<BC> velBCF2(new MultiphaseVelocityBC(true, false, false, fctF2, phiL, 0.0, BCFunction::INFCONST));
 
-        SPtr<BC> noSlipBC(new NoSlipBC());
+        short wetting = 1;
+        SPtr<BC> noSlipBC(new NoSlipBC(wetting));
         noSlipBC->setBCStrategy(SPtr<BCStrategy>(new MultiphaseNoSlipBCStrategy()));
 
         SPtr<BC> denBC(new DensityBC(rhoLB));
diff --git a/apps/cpu/LiggghtsApp/LiggghtsApp.cpp b/apps/cpu/LiggghtsApp/LiggghtsApp.cpp
index 825d63ea1..7cc15ceed 100644
--- a/apps/cpu/LiggghtsApp/LiggghtsApp.cpp
+++ b/apps/cpu/LiggghtsApp/LiggghtsApp.cpp
@@ -59,7 +59,6 @@ int main(int argc, char *argv[])
     //////////////////////////////////////////////////////////////////////////////////
     // BC visitor
     BoundaryConditionsBlockVisitor bcVisitor;
-    bcVisitor.addBC(noSlipBC);
 
 
 
diff --git a/apps/cpu/MultiphaseSymmetryTest/CMakeLists.txt b/apps/cpu/MultiphaseSymmetryTest/CMakeLists.txt
index f6193c782..e81cdc10d 100644
--- a/apps/cpu/MultiphaseSymmetryTest/CMakeLists.txt
+++ b/apps/cpu/MultiphaseSymmetryTest/CMakeLists.txt
@@ -3,4 +3,4 @@
 ########################################################
 PROJECT(MultiphaseSymmetryTest)
 
-vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluidsCore basics ${MPI_CXX_LIBRARIES} MultiphaseFlow NonNewtonianFluids FILES droplet.cpp )
\ No newline at end of file
+vf_add_library(BUILDTYPE binary PRIVATE_LINK cpu_core basics ${MPI_CXX_LIBRARIES} MultiphaseFlow NonNewtonianFluids FILES droplet.cpp )
\ No newline at end of file
diff --git a/apps/cpu/MultiphaseSymmetryTest/droplet.cpp b/apps/cpu/MultiphaseSymmetryTest/droplet.cpp
index 17406ccc6..5af938ecd 100644
--- a/apps/cpu/MultiphaseSymmetryTest/droplet.cpp
+++ b/apps/cpu/MultiphaseSymmetryTest/droplet.cpp
@@ -213,7 +213,7 @@ void run(string configname)
         grid->setPeriodicX3(true);
         grid->setGhostLayerWidth(2);
 
-        SPtr<Grid3DVisitor> metisVisitor(new MetisPartitioningGridVisitor(comm, MetisPartitioningGridVisitor::LevelBased, DIR_MMM, MetisPartitioner::RECURSIVE));
+        SPtr<Grid3DVisitor> metisVisitor(new MetisPartitioningGridVisitor(comm, MetisPartitioningGridVisitor::LevelBased, dMMM, MetisPartitioner::RECURSIVE));
 
         //////////////////////////////////////////////////////////////////////////
         // restart
diff --git a/apps/cpu/Nozzle/nozzleSinglePhase.cpp b/apps/cpu/Nozzle/nozzleSinglePhase.cpp
index 90a84c35d..466757c5c 100644
--- a/apps/cpu/Nozzle/nozzleSinglePhase.cpp
+++ b/apps/cpu/Nozzle/nozzleSinglePhase.cpp
@@ -456,10 +456,7 @@ int main(int argc, char *argv[])
         // BC visitor
         BoundaryConditionsBlockVisitor bcVisitor;
         //MultiphaseBoundaryConditionsBlockVisitor bcVisitor;
-        bcVisitor.addBC(noSlipBC);
-        //bcVisitor.addBC(inflowConcreteBC);
-        bcVisitor.addBC(inflowAirBC1);
-        bcVisitor.addBC(outflowBC);
+
 
         // SPtr<LBMKernel> kernel   = make_shared<IBcumulantK17LBMKernel>();
          //SPtr<LBMKernel> kernel   = make_shared<CumulantK17LBMKernel>();
diff --git a/apps/cpu/NozzleMultiphase/nozzleMultiPhase.cpp b/apps/cpu/NozzleMultiphase/nozzleMultiPhase.cpp
index 1f0d3d035..38173be77 100644
--- a/apps/cpu/NozzleMultiphase/nozzleMultiPhase.cpp
+++ b/apps/cpu/NozzleMultiphase/nozzleMultiPhase.cpp
@@ -458,10 +458,6 @@ int main(int argc, char *argv[])
         // BC visitor
         //BoundaryConditionsBlockVisitor bcVisitor;
         MultiphaseBoundaryConditionsBlockVisitor bcVisitor;
-        bcVisitor.addBC(noSlipBC);
-        bcVisitor.addBC(inflowConcreteBC);
-        bcVisitor.addBC(inflowAirBC1);
-        bcVisitor.addBC(outflowBC);
 
         // SPtr<LBMKernel> kernel   = make_shared<IBcumulantK17LBMKernel>();
          //SPtr<LBMKernel> kernel   = make_shared<CumulantK17LBMKernel>();
diff --git a/src/cpu/LiggghtsCoupling/LBM/IBsharpInterfaceLBMKernel.cpp b/src/cpu/LiggghtsCoupling/LBM/IBsharpInterfaceLBMKernel.cpp
index c935693c7..28d02ba80 100644
--- a/src/cpu/LiggghtsCoupling/LBM/IBsharpInterfaceLBMKernel.cpp
+++ b/src/cpu/LiggghtsCoupling/LBM/IBsharpInterfaceLBMKernel.cpp
@@ -270,7 +270,7 @@ void IBsharpInterfaceLBMKernel::calculate(int step)
 
                     SPtr<DistributionArray3D> distributionH = this->getDataSet()->getHdistributions();
                     real hh[27];
-                    distributionH->getDistributionInv(hh, x1, x2, x3);
+                    distributionH->getPostCollisionDistribution(hh, x1, x2, x3);
                     real phiD, vxP, vyP, vzP;
 
                     D3Q27System::calcIncompMacroscopicValues(hh, phiD, vxP, vyP, vzP);
@@ -278,7 +278,7 @@ void IBsharpInterfaceLBMKernel::calculate(int step)
 
                     SPtr<DistributionArray3D> distribution = this->getDataSet()->getFdistributions();
                     real ff[27];
-                    distribution->getDistributionInv(ff, x1, x2, x3);
+                    distribution->getPostCollisionDistribution(ff, x1, x2, x3);
                     real rhoG, vx, vy, vz;
 
                     D3Q27System::calcIncompMacroscopicValues(ff, rhoG, vx, vy, vz);
@@ -320,7 +320,7 @@ void IBsharpInterfaceLBMKernel::calculate(int step)
 
                         // 16.03.23 c: BB gas side with updated boundary velocity
 
-                        distribution->getDistributionInv(ff, x1, x2, x3);
+                        distribution->getPostCollisionDistribution(ff, x1, x2, x3);
                         real rhoG;
                         if (phi[d000] > c1o2) { // initialization necessary
                             real sumRho = 0;
diff --git a/src/cpu/MultiphaseFlow/BoundaryConditions/MultiphasePressureBCStrategy.cpp b/src/cpu/MultiphaseFlow/BoundaryConditions/MultiphasePressureBCStrategy.cpp
index 26535ebd2..eb5b429a6 100644
--- a/src/cpu/MultiphaseFlow/BoundaryConditions/MultiphasePressureBCStrategy.cpp
+++ b/src/cpu/MultiphaseFlow/BoundaryConditions/MultiphasePressureBCStrategy.cpp
@@ -100,19 +100,19 @@ void MultiphasePressureBCStrategy::applyBC()
         //    if (false)//(phi<0.01)
         //    {
         //    LBMReal ftemp = -f[D3Q27System::INVDIR[fdir]] + feq[fdir] + feq[D3Q27System::INVDIR[fdir]];
-        //    distributions->setDistributionForDirection(ftemp, x1, x2, x3, D3Q27System::INVDIR[fdir]);
+        //    distributions->setPostCollisionDistributionForDirection(ftemp, x1, x2, x3, D3Q27System::INVDIR[fdir]);
 
         //    LBMReal hReturn = 0;
         //    //h[fdir]; //-h[D3Q27System::INVDIR[fdir]] + htemp[fdir] +
         //                                                    //htemp[D3Q27System::INVDIR[fdir]];
-        //    distributionsH->setDistributionForDirection(hReturn, x1, x2, x3, D3Q27System::INVDIR[fdir]);
+        //    distributionsH->setPostCollisionDistributionForDirection(hReturn, x1, x2, x3, D3Q27System::INVDIR[fdir]);
         // } 
 
         // else{
-        // //   //distributions->setDistributionForDirection(rhoBC*D3Q27System::WEIGTH[fdir], x1, x2, x3, D3Q27System::INVDIR[fdir]);
-        // //   //distributionsH->setDistributionForDirection(phiBC*D3Q27System::WEIGTH[fdir], x1, x2, x3, D3Q27System::INVDIR[fdir]);
-           distributions->setDistributionForDirection(0.7*f[D3Q27System::INVDIR[fdir]], x1, x2, x3, D3Q27System::INVDIR[fdir]);
-           distributionsH->setDistributionForDirection(0.7*h[D3Q27System::INVDIR[fdir]], x1, x2, x3, D3Q27System::INVDIR[fdir]);
+        // //   //distributions->setPostCollisionDistributionForDirection(rhoBC*D3Q27System::WEIGTH[fdir], x1, x2, x3, D3Q27System::INVDIR[fdir]);
+        // //   //distributionsH->setPostCollisionDistributionForDirection(phiBC*D3Q27System::WEIGTH[fdir], x1, x2, x3, D3Q27System::INVDIR[fdir]);
+           distributions->setPostCollisionDistributionForDirection(0.7*f[D3Q27System::INVDIR[fdir]], x1, x2, x3, D3Q27System::INVDIR[fdir]);
+           distributionsH->setPostCollisionDistributionForDirection(0.7*h[D3Q27System::INVDIR[fdir]], x1, x2, x3, D3Q27System::INVDIR[fdir]);
         // }
        }
    }
diff --git a/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.cpp b/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.cpp
index 610d16374..297cc3fe5 100644
--- a/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.cpp
+++ b/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.cpp
@@ -210,7 +210,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 
   //                      findNeighbors(phaseFieldOld, x1, x2, x3);
   //                      findNeighbors2(phaseField, x1, x2, x3);
-  //                      if ((phi[DIR_000] <= phiLim) && (phi2[DIR_000] > phiLim)) {
+  //                      if ((phi[d000] <= phiLim) && (phi2[d000] > phiLim)) {
   //                          for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
   //                              if ((phi2[fdir] > phiLim)  &&
   //                                  ( !bcArray->isSolid(x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir],
@@ -361,9 +361,9 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 //                real cz = ((((mfccc - mfaaa) + (mfcac - mfaca)) + ((mfacc - mfcaa) + (mfaac - mfcca))) +
 //                           (((mfbac - mfbca) + (mfbcc - mfbaa)) + ((mfabc - mfcba) + (mfcbc - mfaba))) + (mfbbc - mfbba));
 //			
-//				(*vxNode)(x1, x2, x3) =(c6o1 * cx -(normX1 * oneOverInterfaceScale * (phi[DIR_000] - phiH) * (phi[DIR_000] - phiL)) / (phiH - phiL)) /(c6o1 * phi[DIR_000]);
-//				(*vyNode)(x1, x2, x3) =(c6o1 * cy -(normX2 * oneOverInterfaceScale * (phi[DIR_000] - phiH) * (phi[DIR_000] - phiL)) / (phiH - phiL)) /(c6o1 * phi[DIR_000]);
-//				(*vzNode)(x1, x2, x3) =(c6o1 * cz -(normX3 * oneOverInterfaceScale * (phi[DIR_000] - phiH) * (phi[DIR_000] - phiL)) / (phiH - phiL)) /(c6o1 * phi[DIR_000]);
+//				(*vxNode)(x1, x2, x3) =(c6o1 * cx -(normX1 * oneOverInterfaceScale * (phi[d000] - phiH) * (phi[d000] - phiL)) / (phiH - phiL)) /(c6o1 * phi[d000]);
+//				(*vyNode)(x1, x2, x3) =(c6o1 * cy -(normX2 * oneOverInterfaceScale * (phi[d000] - phiH) * (phi[d000] - phiL)) / (phiH - phiL)) /(c6o1 * phi[d000]);
+//				(*vzNode)(x1, x2, x3) =(c6o1 * cz -(normX3 * oneOverInterfaceScale * (phi[d000] - phiH) * (phi[d000] - phiL)) / (phiH - phiL)) /(c6o1 * phi[d000]);
 //            }
 //        }
 //    }
@@ -724,24 +724,24 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 									}
 								}
 							}
-							//distribution->setDistributionForDirection(D3Q27System::getIncompFeqForDirection(DIR_000, rhoG, vx, vy, vz), x1, x2, x3, DIR_000);
+							//distribution->setDistributionForDirection(D3Q27System::getIncompFeqForDirection(d000, rhoG, vx, vy, vz), x1, x2, x3, d000);
 							//{
-							//	real fL = distribution->getDistributionInvForDirection(x1, x2, x3, DIR_000);
-							//	real feqOLD = D3Q27System::getIncompFeqForDirection(DIR_000, (*rhoNode)(x1, x2, x3), vx,vy,vz);
-							//	real feqNew = D3Q27System::getIncompFeqForDirection(DIR_000, rhoG,vx,vy,vz);
-							//	distribution->setDistributionForDirection(fL-feqOLD+feqNew, x1, x2, x3, DIR_000);
+							//	real fL = distribution->getDistributionInvForDirection(x1, x2, x3, d000);
+							//	real feqOLD = D3Q27System::getIncompFeqForDirection(d000, (*rhoNode)(x1, x2, x3), vx,vy,vz);
+							//	real feqNew = D3Q27System::getIncompFeqForDirection(d000, rhoG,vx,vy,vz);
+							//	distribution->setPostCollisionDistributionForDirection(fL-feqOLD+feqNew, x1, x2, x3, d000);
 							//}
                             //D3Q27System::calcIncompMacroscopicValues(ff, rhoG, vx, vy, vz);
-                            ff[DIR_000] = vx * vx + vy * vy + vz * vz +
-                                          (((ff[DIR_MM0] + ff[DIR_PP0]) + (ff[DIR_MP0] + ff[DIR_PM0])) + ((ff[DIR_0MM] + ff[DIR_0PP]) + (ff[DIR_0MP] + ff[DIR_0PM])) + ((ff[DIR_M0M] + ff[DIR_P0P]) + (ff[DIR_M0P] + ff[DIR_P0M])) +
-                                           c2o1 * ((((ff[DIR_MMM] + ff[DIR_PPP]) + (ff[DIR_MMP] + ff[DIR_PPM]))) + (((ff[DIR_MPM] + ff[DIR_PMP]) + (ff[DIR_MPP] + ff[DIR_PMM])))));
-                            distribution->setDistributionForDirection(ff[DIR_000], x1, x2, x3, DIR_000);
+                            ff[d000] = vx * vx + vy * vy + vz * vz +
+                                          (((ff[dMM0] + ff[dPP0]) + (ff[dMP0] + ff[dPM0])) + ((ff[d0MM] + ff[d0PP]) + (ff[d0MP] + ff[d0PM])) + ((ff[dM0M] + ff[dP0P]) + (ff[dM0P] + ff[dP0M])) +
+                                           c2o1 * ((((ff[dMMM] + ff[dPPP]) + (ff[dMMP] + ff[dPPM]))) + (((ff[dMPM] + ff[dPMP]) + (ff[dMPP] + ff[dPMM])))));
+                            distribution->setPostCollisionDistributionForDirection(ff[d000], x1, x2, x3, d000);
 
 						}
 
 						else {//no refill of gas required
 							rhoG = (*rhoNode)(x1, x2, x3);
-                            if (phi2[DIR_000] <= phiLim) { // no refill liquid
+                            if (phi2[d000] <= phiLim) { // no refill liquid
                                // real ffRecover[27];
                                //  distribution->getDistributionInv(ffRecover, x1, x2, x3);//only needed for BB (03.10.2023)
 
@@ -856,7 +856,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 
 										//if ((*phaseField)(x1, x2, x3) <= c1o2) 
 										//17.10.2023 Beware!!! will be overwritten!
-										distribution->setDistributionForDirection(fBC, x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir], x3 + D3Q27System::DX3[fdir], D3Q27System::INVDIR[fdir]);
+										distribution->setPostCollisionDistributionForDirection(fBC, x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir], x3 + D3Q27System::DX3[fdir], D3Q27System::INVDIR[fdir]);
                                         //if (((*phaseField)(x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir], x3 + D3Q27System::DX3[fdir])) > phiLim)
                                         if (phi2[fdir] > phiLim)
 										{
@@ -924,15 +924,15 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                                                 //               x3 + D3Q27System::DX3[fdir]),
                                                 //    (*vzNode)(x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir],
                                                 //               x3 + D3Q27System::DX3[fdir]));
-                                                //distribution->setDistributionForDirection(
+                                                //distribution->setPostCollisionDistributionForDirection(
                                                 //    laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio +
                                                 //        ( feqReplace),
                                                 //    x1, x2, x3, fdir);
 												//17.10.2023
 												real fLBC=(-eqBCN - eqGN + c2o1*fG + fL)/(c1o1 + densityRatio) + ((eqBCN + eqGN - fL + laplacePressureBC*WEIGTH[fdir]))*(densityRatio/(c1o1 + densityRatio));
                                                 fBC = fL - fLBC + fG;
-                                                distribution->setDistributionForDirection(fLBC,x1, x2, x3, fdir);
-												distribution->setDistributionForDirection(fBC, x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir], x3 + D3Q27System::DX3[fdir], D3Q27System::INVDIR[fdir]);
+                                                distribution->setPostCollisionDistributionForDirection(fLBC,x1, x2, x3, fdir);
+												distribution->setPostCollisionDistributionForDirection(fBC, x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir], x3 + D3Q27System::DX3[fdir], D3Q27System::INVDIR[fdir]);
 
 												//distribution->setDistributionForDirection(
             //                                        laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio +
@@ -1203,21 +1203,22 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                                             //              x3 + D3Q27System::DX3[fdir]),
                                             //    (*vzNode)(x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir],
                                             //              x3 + D3Q27System::DX3[fdir]));
-                                            //distribution->setDistributionForDirection(
+                                            //distribution->setPostCollisionDistributionForDirection(
                                             //    laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio + (feqReplace),
                                             //    x1, x2, x3, fdir);
 
-                                            //distribution->setDistributionForDirection(
+                                            //distribution->setPostCollisionDistributionForDirection(
                                             //    laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio + (feqReplace),
                                             //    x1, x2, x3, fdir);
 												real fLBC=(-eqBCN - eqGN + c2o1*fG + fL)/(c1o1 + densityRatio) + ((eqBCN + eqGN - fL + laplacePressureBC*WEIGTH[fdir]))*(densityRatio/(c1o1 + densityRatio));
                                                 fBC = fL - fLBC + fG;
-                                                distribution->setDistributionForDirection(fLBC,x1, x2, x3, fdir);
+                                                distribution->setPostCollisionDistributionForDirection(fLBC, x1, x2, x3,
+                                                                                                       fdir);
                                                 ff[D3Q27System::INVDIR[fdir]] = fBC;
 												//distribution->setDistributionForDirection(fBC, x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir], x3 + D3Q27System::DX3[fdir], D3Q27System::INVDIR[fdir]);
 
 
-                                            //distribution->setDistributionForDirection(
+                                            //distribution->setPostCollisionDistributionForDirection(
                                             //    laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio +
                                             //        ((eqBCN + eqGN) * (c1o1 - c1o1 / densityRatio) - fL),
                                             //    x1, x2, x3, fdir);
@@ -1235,7 +1236,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                                             //                                             x3 + D3Q27System::DX3[fdir]));
                                             //    if (vLink>0) {
                                             //    
-                                            //    distribution->setDistributionForDirection(
+                                            //    distribution->setPostCollisionDistributionForDirection(
                                             //        laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio +
                                             //            c1o2 * ((eqBCN + eqGN) * (c1o1 - 2 * c1o1 / densityRatio) - fL) +
                                             //            // alternative to antiBB is BB
@@ -1251,7 +1252,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                                             //            0 * (c2o1 - collFactorL) * (fL - feqOLD) / (c1o1 - collFactorL),
                                             //        x1, x2, x3, fdir);
                                             //} else {
-                                            //    distribution->setDistributionForDirection(
+                                            //    distribution->setPostCollisionDistributionForDirection(
                                             //        laplacePressureBC * WEIGTH[fdir] + (fBC + fG) / densityRatio +
                                             //             ((eqBCN + eqGN) * (c1o1 -  c1o1 / densityRatio) - fL),
                                             //        x1, x2, x3, fdir);
@@ -1405,19 +1406,19 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 
 										//17.10.2023: recovery of liquid distribution from matching velocities at the interface.
            //                             if (
-											//((fdir == DIR_P00) || (fdir == DIR_M00) && (x1==maxX1))||
-           //                                 ((fdir == DIR_PP0) || (fdir == DIR_MM0) && ((x1 == maxX1) || (x2 == maxX2)))||
-           //                                 ((fdir == DIR_00P) || (fdir == DIR_00M) && (x3 == maxX3)) ||
-           //                                 ((fdir == DIR_P0P) || (fdir == DIR_M0M) && ((x1 == maxX1) || (x3 == maxX3))) ||
-           //                                 ((fdir == DIR_0PP) || (fdir == DIR_0MM) && ((x2 == maxX2) || (x3 == maxX3))) ||
-           //                                 ((fdir == DIR_PPP) || (fdir == DIR_MMM) && ((x1 == maxX1) ||(x2 == maxX2) || (x3 == maxX3))) ||
-           //                                 ((fdir == DIR_0P0) || (fdir == DIR_0M0) && (x2 == maxX2)) ||
-           //                                 ((fdir == DIR_PM0) || (fdir == DIR_MP0) && ((x1 == maxX1) || (x2 == minX2-1))) ||
-											//((fdir == DIR_P0M) || (fdir == DIR_M0P) && ((x1 == maxX1) || (x3 == minX3-1))) ||
-											//((fdir == DIR_0PM) || (fdir == DIR_0MP) && ((x2 == maxX2) || (x3 == minX3-1))) ||
-											//((fdir == DIR_PMM) || (fdir == DIR_MPP) && ((x1 == maxX1) ||(x2 == minX2-1) || (x3 == minX3-1))) ||
-											//((fdir == DIR_PPM) || (fdir == DIR_MMP) && ((x1 == maxX1) ||(x2 == maxX2) || (x3 == minX3-1))) ||
-											//((fdir == DIR_PMP) || (fdir == DIR_MPM) && ((x1 == maxX1) ||(x2 == minX2-1) || (x3 == maxX3))))
+											//((fdir == dP00) || (fdir == dM00) && (x1==maxX1))||
+           //                                 ((fdir == dPP0) || (fdir == dMM0) && ((x1 == maxX1) || (x2 == maxX2)))||
+           //                                 ((fdir == d00P) || (fdir == d00M) && (x3 == maxX3)) ||
+           //                                 ((fdir == dP0P) || (fdir == dM0M) && ((x1 == maxX1) || (x3 == maxX3))) ||
+           //                                 ((fdir == d0PP) || (fdir == d0MM) && ((x2 == maxX2) || (x3 == maxX3))) ||
+           //                                 ((fdir == dPPP) || (fdir == dMMM) && ((x1 == maxX1) ||(x2 == maxX2) || (x3 == maxX3))) ||
+           //                                 ((fdir == d0P0) || (fdir == d0M0) && (x2 == maxX2)) ||
+           //                                 ((fdir == dPM0) || (fdir == dMP0) && ((x1 == maxX1) || (x2 == minX2-1))) ||
+											//((fdir == dP0M) || (fdir == dM0P) && ((x1 == maxX1) || (x3 == minX3-1))) ||
+											//((fdir == d0PM) || (fdir == d0MP) && ((x2 == maxX2) || (x3 == minX3-1))) ||
+											//((fdir == dPMM) || (fdir == dMPP) && ((x1 == maxX1) ||(x2 == minX2-1) || (x3 == minX3-1))) ||
+											//((fdir == dPPM) || (fdir == dMMP) && ((x1 == maxX1) ||(x2 == maxX2) || (x3 == minX3-1))) ||
+											//((fdir == dPMP) || (fdir == dMPM) && ((x1 == maxX1) ||(x2 == minX2-1) || (x3 == maxX3))))
 										{
 
                                         real laplacePressureBC;
@@ -1432,7 +1433,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                                         // if (UbMath::isNaN(laplacePressureBC) || UbMath::isInfinity(laplacePressureBC)) {
                                         //                                     laplacePressureBC = laplacePressure;
                                         //                                 }
-                                        /*                                       if (phi2[DIR_000] != phi2[fdir]) {
+                                        /*                                       if (phi2[d000] != phi2[fdir]) {
 
                                                                                laplacePressureBC = laplacePressure *
                                                                                                        (c1o1 - c2o1 *
@@ -1501,7 +1502,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                                         // {
                                         //                                     laplacePressureBC = laplacePressure;
                                         //                                 }
-                                        //if (phi2[DIR_000] != phi2[fdir]) {
+                                        //if (phi2[d000] != phi2[fdir]) {
 
                                         //        laplacePressureBC =
                                         //            laplacePressure *
@@ -3816,8 +3817,8 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 					//real mu = 2 * beta * phi[d000] * (phi[d000] - 1) * (2 * phi[d000] - 1) - kappa * nabla2_phi();
 
 					//----------- Calculating Macroscopic Values -------------
-					//real rho = phi[DIR_000] > phiLim ? rhoH : rhoL;//rhoH + rhoToPhi * (phi[DIR_000] - phiH); //Incompressible
-                    real rho =rhoL+ (rhoH-rhoL) * (phi[DIR_000] - phiL)/(phiH-phiL);
+					//real rho = phi[d000] > phiLim ? rhoH : rhoL;//rhoH + rhoToPhi * (phi[d000] - phiH); //Incompressible
+                    real rho =rhoL+ (rhoH-rhoL) * (phi[d000] - phiL)/(phiH-phiL);
 
 					//real rho = rhoH + rhoToPhi * (tanh(pushInterface*(c2o1*phi[d000]-c1o1))/tanh(pushInterface)*c1o2 +c1o2 - phiH); //Incompressible
 																		///scaled phase field
@@ -4303,8 +4304,8 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 					//FIXME:  warning C4459: declaration of 'B' hides global declaration (message : see declaration of 'D3Q27System::B' )
 					real BB =  (4.0 * collFactorM * OxxPyyPzz * (9.0 * collFactorM - 16.0) - 4.0 * collFactorM * collFactorM - 2.0 * OxxPyyPzz * OxxPyyPzz * (2.0 + 9.0 * collFactorM * (collFactorM - 2.0))) / (3.0 * (collFactorM - OxxPyyPzz) * (OxxPyyPzz * (2.0 + 3.0 * collFactorM) - 8.0 * collFactorM));
 
-					//if ((phi[DIR_000] <= phiLim) && (phi[DIR_000] >0.1)) {
-     //                   collFactorM = (0.1 - phi[DIR_000] + collFactorM * phi[DIR_000] - collFactorM * phiLim) / (0.1 - phiLim);
+					//if ((phi[d000] <= phiLim) && (phi[d000] >0.1)) {
+     //                   collFactorM = (0.1 - phi[d000] + collFactorM * phi[d000] - collFactorM * phiLim) / (0.1 - phiLim);
      //                   OxyyPxzz = c1o1;
      //                   OxyyMxzz = c1o1;
      //                   Oxyz = c1o1;
@@ -4393,17 +4394,17 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 					real Dxy = -c3o1 * collFactorM * mfbba;
 					real Dxz = -c3o1 * collFactorM * mfbab;
 					real Dyz = -c3o1 * collFactorM * mfabb;
-                     //if ((phi[DIR_000] > phiLim) 
-					//if (((phi[DIR_000] < 0.9) || (phi[DIR_000]>0.1))
-						if (((phi[DIR_000] > phiLim) && ((phi[DIR_P00] <= phiLim) || (phi[DIR_M00] <= phiLim) || (phi[DIR_00P] <= phiLim) || (phi[DIR_00M] <= phiLim) || (phi[DIR_0M0] <= phiLim) || (phi[DIR_0P0] <= phiLim) || (phi[DIR_PP0] <= phiLim) || (phi[DIR_PM0] <= phiLim) || (phi[DIR_P0P] <= phiLim) ||
-                                                  (phi[DIR_P0M] <= phiLim) || (phi[DIR_MP0] <= phiLim) || (phi[DIR_MM0] <= phiLim) || (phi[DIR_M0P] <= phiLim) || (phi[DIR_M0M] <= phiLim) || (phi[DIR_0PM] <= phiLim) || (phi[DIR_0MM] <= phiLim) || (phi[DIR_0PP] <= phiLim) || (phi[DIR_0MP] <= phiLim) ||
-                                                  (phi[DIR_PPP] <= phiLim) || (phi[DIR_PMP] <= phiLim) || (phi[DIR_MPP] <= phiLim) || (phi[DIR_MMP] <= phiLim) ||
-                         (phi[DIR_PPM] <= phiLim) || (phi[DIR_PMM] <= phiLim) || (phi[DIR_MPM] <= phiLim) || (phi[DIR_MMM] <= phiLim))) 
+                     //if ((phi[d000] > phiLim) 
+					//if (((phi[d000] < 0.9) || (phi[d000]>0.1))
+						if (((phi[d000] > phiLim) && ((phi[dP00] <= phiLim) || (phi[dM00] <= phiLim) || (phi[d00P] <= phiLim) || (phi[d00M] <= phiLim) || (phi[d0M0] <= phiLim) || (phi[d0P0] <= phiLim) || (phi[dPP0] <= phiLim) || (phi[dPM0] <= phiLim) || (phi[dP0P] <= phiLim) ||
+                                                  (phi[dP0M] <= phiLim) || (phi[dMP0] <= phiLim) || (phi[dMM0] <= phiLim) || (phi[dM0P] <= phiLim) || (phi[dM0M] <= phiLim) || (phi[d0PM] <= phiLim) || (phi[d0MM] <= phiLim) || (phi[d0PP] <= phiLim) || (phi[d0MP] <= phiLim) ||
+                                                  (phi[dPPP] <= phiLim) || (phi[dPMP] <= phiLim) || (phi[dMPP] <= phiLim) || (phi[dMMP] <= phiLim) ||
+                         (phi[dPPM] <= phiLim) || (phi[dPMM] <= phiLim) || (phi[dMPM] <= phiLim) || (phi[dMMM] <= phiLim))) 
 						
-                        || ((phi[DIR_000] <= phiLim) && ((phi[DIR_P00] > phiLim) || (phi[DIR_M00] > phiLim) || (phi[DIR_00P] > phiLim) || (phi[DIR_00M] > phiLim) || (phi[DIR_0M0] > phiLim) || (phi[DIR_0P0] > phiLim) || (phi[DIR_PP0] > phiLim) ||
-                                                                                 (phi[DIR_PM0] > phiLim) || (phi[DIR_P0P] > phiLim) || (phi[DIR_P0M] > phiLim) || (phi[DIR_MP0] > phiLim) || (phi[DIR_MM0] > phiLim) || (phi[DIR_M0P] > phiLim) || (phi[DIR_M0M] > phiLim) ||
-                                                                                 (phi[DIR_0PM] > phiLim) || (phi[DIR_0MM] > phiLim) || (phi[DIR_0PP] > phiLim) || (phi[DIR_0MP] > phiLim) || (phi[DIR_PPP] > phiLim) || (phi[DIR_PMP] > phiLim) || (phi[DIR_MPP] > phiLim) ||
-                                                                                 (phi[DIR_MMP] > phiLim) || (phi[DIR_PPM] > phiLim) || (phi[DIR_PMM] > phiLim) || (phi[DIR_MPM] > phiLim) || (phi[DIR_MMM] > phiLim))) 
+                        || ((phi[d000] <= phiLim) && ((phi[dP00] > phiLim) || (phi[dM00] > phiLim) || (phi[d00P] > phiLim) || (phi[d00M] > phiLim) || (phi[d0M0] > phiLim) || (phi[d0P0] > phiLim) || (phi[dPP0] > phiLim) ||
+                                                                                 (phi[dPM0] > phiLim) || (phi[dP0P] > phiLim) || (phi[dP0M] > phiLim) || (phi[dMP0] > phiLim) || (phi[dMM0] > phiLim) || (phi[dM0P] > phiLim) || (phi[dM0M] > phiLim) ||
+                                                                                 (phi[d0PM] > phiLim) || (phi[d0MM] > phiLim) || (phi[d0PP] > phiLim) || (phi[d0MP] > phiLim) || (phi[dPPP] > phiLim) || (phi[dPMP] > phiLim) || (phi[dMPP] > phiLim) ||
+                                                                                 (phi[dMMP] > phiLim) || (phi[dPPM] > phiLim) || (phi[dPMM] > phiLim) || (phi[dMPM] > phiLim) || (phi[dMMM] > phiLim))) 
 						){
 
 					// {
@@ -4450,8 +4451,8 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 					///////
 
                     // non Newtonian fluid collision factor
-                    //if (phi[DIR_000] > phiLim /*- 0.3*/) {
-                    //if (phi[DIR_000] > phiLim) {
+                    //if (phi[d000] > phiLim /*- 0.3*/) {
+                    //if (phi[d000] > phiLim) {
                     //    real shearRate = sqrt(c2o1 * (dxux * dxux + dyuy * dyuy + dzuz * dzuz) + Dxy * Dxy + Dxz * Dxz + Dyz * Dyz);
                     //    collFactorM = Rheology::getBinghamCollFactor(collFactorM, shearRate, c1o1);
                     //    collFactorM = (collFactorM < c1o1) ? c1o1 : collFactorM;
@@ -5092,7 +5093,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                        // real concentration =
                        //     ((((mfccc + mfaaa) + (mfaca + mfcac)) + ((mfacc + mfcaa) + (mfaac + mfcca))) + (((mfbac + mfbca) + (mfbaa + mfbcc)) + ((mfabc + mfcba) + (mfaba + mfcbc)) + ((mfacb + mfcab) + (mfaab + mfccb))) + ((mfabb + mfcbb) + (mfbab + mfbcb) + (mfbba + mfbbc))) + mfbbb;
                         // 06.10.2023 filtered phi
-                        real concentration = phi[DIR_000];
+                        real concentration = phi[d000];
                         //for (int dir = 0; dir <= 26; dir++) {concentration += WEIGTH[dir] * phi[dir];} 
 						
 						////////////////////////////////////////////////////////////////////////////////////
@@ -5100,33 +5101,33 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                         //if (true) //(concentration <= phiLim)
                         //{
                         //    inverseConcentration = true;
-                        //    mfcbb = D3Q27System::getIncompFeqForDirection(DIR_PMM, c1o1, vvx, vvy, vvz) - mfcbb;
-                        //    mfbcb = D3Q27System::getIncompFeqForDirection(DIR_MPM, c1o1, vvx, vvy, vvz) - mfbcb;
-                        //    mfbbc = D3Q27System::getIncompFeqForDirection(DIR_MMP, c1o1, vvx, vvy, vvz) - mfbbc;
-                        //    mfccb = D3Q27System::getIncompFeqForDirection(DIR_PPM, c1o1, vvx, vvy, vvz) - mfccb;
-                        //    mfacb = D3Q27System::getIncompFeqForDirection(DIR_0PM, c1o1, vvx, vvy, vvz) - mfacb;
-                        //    mfcbc = D3Q27System::getIncompFeqForDirection(DIR_PMP, c1o1, vvx, vvy, vvz) - mfcbc;
-                        //    mfabc = D3Q27System::getIncompFeqForDirection(DIR_0MP, c1o1, vvx, vvy, vvz) - mfabc;
-                        //    mfbcc = D3Q27System::getIncompFeqForDirection(DIR_MPP, c1o1, vvx, vvy, vvz) - mfbcc;
-                        //    mfbac = D3Q27System::getIncompFeqForDirection(DIR_M0P, c1o1, vvx, vvy, vvz) - mfbac;
-                        //    mfccc = D3Q27System::getIncompFeqForDirection(DIR_PPP, c1o1, vvx, vvy, vvz) - mfccc;
-                        //    mfacc = D3Q27System::getIncompFeqForDirection(DIR_0PP, c1o1, vvx, vvy, vvz) - mfacc;
-                        //    mfcac = D3Q27System::getIncompFeqForDirection(DIR_P0P, c1o1, vvx, vvy, vvz) - mfcac;
-                        //    mfaac = D3Q27System::getIncompFeqForDirection(DIR_00P, c1o1, vvx, vvy, vvz) - mfaac;
-                        //    mfabb = D3Q27System::getIncompFeqForDirection(DIR_0MM, c1o1, vvx, vvy, vvz) - mfabb;
-                        //    mfbab = D3Q27System::getIncompFeqForDirection(DIR_M0M, c1o1, vvx, vvy, vvz) - mfbab;
-                        //    mfbba = D3Q27System::getIncompFeqForDirection(DIR_MM0, c1o1, vvx, vvy, vvz) - mfbba;
-                        //    mfaab = D3Q27System::getIncompFeqForDirection(DIR_00M, c1o1, vvx, vvy, vvz) - mfaab;
-                        //    mfcab = D3Q27System::getIncompFeqForDirection(DIR_P0M, c1o1, vvx, vvy, vvz) - mfcab;
-                        //    mfaba = D3Q27System::getIncompFeqForDirection(DIR_0M0, c1o1, vvx, vvy, vvz) - mfaba;
-                        //    mfcba = D3Q27System::getIncompFeqForDirection(DIR_PM0, c1o1, vvx, vvy, vvz) - mfcba;
-                        //    mfbaa = D3Q27System::getIncompFeqForDirection(DIR_M00, c1o1, vvx, vvy, vvz) - mfbaa;
-                        //    mfbca = D3Q27System::getIncompFeqForDirection(DIR_MP0, c1o1, vvx, vvy, vvz) - mfbca;
-                        //    mfaaa = D3Q27System::getIncompFeqForDirection(DIR_000, c1o1, vvx, vvy, vvz) - mfaaa;
-                        //    mfcaa = D3Q27System::getIncompFeqForDirection(DIR_P00, c1o1, vvx, vvy, vvz) - mfcaa;
-                        //    mfaca = D3Q27System::getIncompFeqForDirection(DIR_0P0, c1o1, vvx, vvy, vvz) - mfaca;
-                        //    mfcca = D3Q27System::getIncompFeqForDirection(DIR_PP0, c1o1, vvx, vvy, vvz) - mfcca;
-                        //    mfbbb = D3Q27System::getIncompFeqForDirection(DIR_MMM, c1o1, vvx, vvy, vvz) - mfbbb;
+                        //    mfcbb = D3Q27System::getIncompFeqForDirection(dPMM, c1o1, vvx, vvy, vvz) - mfcbb;
+                        //    mfbcb = D3Q27System::getIncompFeqForDirection(dMPM, c1o1, vvx, vvy, vvz) - mfbcb;
+                        //    mfbbc = D3Q27System::getIncompFeqForDirection(dMMP, c1o1, vvx, vvy, vvz) - mfbbc;
+                        //    mfccb = D3Q27System::getIncompFeqForDirection(dPPM, c1o1, vvx, vvy, vvz) - mfccb;
+                        //    mfacb = D3Q27System::getIncompFeqForDirection(d0PM, c1o1, vvx, vvy, vvz) - mfacb;
+                        //    mfcbc = D3Q27System::getIncompFeqForDirection(dPMP, c1o1, vvx, vvy, vvz) - mfcbc;
+                        //    mfabc = D3Q27System::getIncompFeqForDirection(d0MP, c1o1, vvx, vvy, vvz) - mfabc;
+                        //    mfbcc = D3Q27System::getIncompFeqForDirection(dMPP, c1o1, vvx, vvy, vvz) - mfbcc;
+                        //    mfbac = D3Q27System::getIncompFeqForDirection(dM0P, c1o1, vvx, vvy, vvz) - mfbac;
+                        //    mfccc = D3Q27System::getIncompFeqForDirection(dPPP, c1o1, vvx, vvy, vvz) - mfccc;
+                        //    mfacc = D3Q27System::getIncompFeqForDirection(d0PP, c1o1, vvx, vvy, vvz) - mfacc;
+                        //    mfcac = D3Q27System::getIncompFeqForDirection(dP0P, c1o1, vvx, vvy, vvz) - mfcac;
+                        //    mfaac = D3Q27System::getIncompFeqForDirection(d00P, c1o1, vvx, vvy, vvz) - mfaac;
+                        //    mfabb = D3Q27System::getIncompFeqForDirection(d0MM, c1o1, vvx, vvy, vvz) - mfabb;
+                        //    mfbab = D3Q27System::getIncompFeqForDirection(dM0M, c1o1, vvx, vvy, vvz) - mfbab;
+                        //    mfbba = D3Q27System::getIncompFeqForDirection(dMM0, c1o1, vvx, vvy, vvz) - mfbba;
+                        //    mfaab = D3Q27System::getIncompFeqForDirection(d00M, c1o1, vvx, vvy, vvz) - mfaab;
+                        //    mfcab = D3Q27System::getIncompFeqForDirection(dP0M, c1o1, vvx, vvy, vvz) - mfcab;
+                        //    mfaba = D3Q27System::getIncompFeqForDirection(d0M0, c1o1, vvx, vvy, vvz) - mfaba;
+                        //    mfcba = D3Q27System::getIncompFeqForDirection(dPM0, c1o1, vvx, vvy, vvz) - mfcba;
+                        //    mfbaa = D3Q27System::getIncompFeqForDirection(dM00, c1o1, vvx, vvy, vvz) - mfbaa;
+                        //    mfbca = D3Q27System::getIncompFeqForDirection(dMP0, c1o1, vvx, vvy, vvz) - mfbca;
+                        //    mfaaa = D3Q27System::getIncompFeqForDirection(d000, c1o1, vvx, vvy, vvz) - mfaaa;
+                        //    mfcaa = D3Q27System::getIncompFeqForDirection(dP00, c1o1, vvx, vvy, vvz) - mfcaa;
+                        //    mfaca = D3Q27System::getIncompFeqForDirection(d0P0, c1o1, vvx, vvy, vvz) - mfaca;
+                        //    mfcca = D3Q27System::getIncompFeqForDirection(dPP0, c1o1, vvx, vvy, vvz) - mfcca;
+                        //    mfbbb = D3Q27System::getIncompFeqForDirection(dMMM, c1o1, vvx, vvy, vvz) - mfbbb;
                         //    normX1 *= -c1o1;
                         //    normX2 *= -c1o1;
                         //    normX3 *= -c1o1;
@@ -5215,7 +5216,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
                         //scaleNorm = scaleNorm * scaleNorm;
                         //scaleNorm = scaleNorm * scaleNorm;
                         //scaleNorm = scaleNorm * scaleNorm;
-                        if (true)// (phi[DIR_000] > phiLim) //(true) // ((phi[DIR_000] > phiLim)||(normX1*vvx+normX2*vvy+normX3*vvz<0))
+                        if (true)// (phi[d000] > phiLim) //(true) // ((phi[d000] > phiLim)||(normX1*vvx+normX2*vvy+normX3*vvz<0))
 						{
                         
                         normX1 = (normX1 * (c1o1 - mixNormal) + mixNormal * MomX1 / MomXDenom) * scaleNorm;
@@ -5384,33 +5385,33 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 
 
 						//if (inverseConcentration) {
-      //                      mfcbb = D3Q27System::getIncompFeqForDirection(DIR_PMM, c1o1, vvx, vvy, vvz) - mfcbb;
-      //                      mfbcb = D3Q27System::getIncompFeqForDirection(DIR_MPM, c1o1, vvx, vvy, vvz) - mfbcb;
-      //                      mfbbc = D3Q27System::getIncompFeqForDirection(DIR_MMP, c1o1, vvx, vvy, vvz) - mfbbc;
-      //                      mfccb = D3Q27System::getIncompFeqForDirection(DIR_PPM, c1o1, vvx, vvy, vvz) - mfccb;
-      //                      mfacb = D3Q27System::getIncompFeqForDirection(DIR_0PM, c1o1, vvx, vvy, vvz) - mfacb;
-      //                      mfcbc = D3Q27System::getIncompFeqForDirection(DIR_PMP, c1o1, vvx, vvy, vvz) - mfcbc;
-      //                      mfabc = D3Q27System::getIncompFeqForDirection(DIR_0MP, c1o1, vvx, vvy, vvz) - mfabc;
-      //                      mfbcc = D3Q27System::getIncompFeqForDirection(DIR_MPP, c1o1, vvx, vvy, vvz) - mfbcc;
-      //                      mfbac = D3Q27System::getIncompFeqForDirection(DIR_M0P, c1o1, vvx, vvy, vvz) - mfbac;
-      //                      mfccc = D3Q27System::getIncompFeqForDirection(DIR_PPP, c1o1, vvx, vvy, vvz) - mfccc;
-      //                      mfacc = D3Q27System::getIncompFeqForDirection(DIR_0PP, c1o1, vvx, vvy, vvz) - mfacc;
-      //                      mfcac = D3Q27System::getIncompFeqForDirection(DIR_P0P, c1o1, vvx, vvy, vvz) - mfcac;
-      //                      mfaac = D3Q27System::getIncompFeqForDirection(DIR_00P, c1o1, vvx, vvy, vvz) - mfaac;
-      //                      mfabb = D3Q27System::getIncompFeqForDirection(DIR_0MM, c1o1, vvx, vvy, vvz) - mfabb;
-      //                      mfbab = D3Q27System::getIncompFeqForDirection(DIR_M0M, c1o1, vvx, vvy, vvz) - mfbab;
-      //                      mfbba = D3Q27System::getIncompFeqForDirection(DIR_MM0, c1o1, vvx, vvy, vvz) - mfbba;
-      //                      mfaab = D3Q27System::getIncompFeqForDirection(DIR_00M, c1o1, vvx, vvy, vvz) - mfaab;
-      //                      mfcab = D3Q27System::getIncompFeqForDirection(DIR_P0M, c1o1, vvx, vvy, vvz) - mfcab;
-      //                      mfaba = D3Q27System::getIncompFeqForDirection(DIR_0M0, c1o1, vvx, vvy, vvz) - mfaba;
-      //                      mfcba = D3Q27System::getIncompFeqForDirection(DIR_PM0, c1o1, vvx, vvy, vvz) - mfcba;
-      //                      mfbaa = D3Q27System::getIncompFeqForDirection(DIR_M00, c1o1, vvx, vvy, vvz) - mfbaa;
-      //                      mfbca = D3Q27System::getIncompFeqForDirection(DIR_MP0, c1o1, vvx, vvy, vvz) - mfbca;
-      //                      mfaaa = D3Q27System::getIncompFeqForDirection(DIR_000, c1o1, vvx, vvy, vvz) - mfaaa;
-      //                      mfcaa = D3Q27System::getIncompFeqForDirection(DIR_P00, c1o1, vvx, vvy, vvz) - mfcaa;
-      //                      mfaca = D3Q27System::getIncompFeqForDirection(DIR_0P0, c1o1, vvx, vvy, vvz) - mfaca;
-      //                      mfcca = D3Q27System::getIncompFeqForDirection(DIR_PP0, c1o1, vvx, vvy, vvz) - mfcca;
-      //                      mfbbb = D3Q27System::getIncompFeqForDirection(DIR_MMM, c1o1, vvx, vvy, vvz) - mfbbb;
+      //                      mfcbb = D3Q27System::getIncompFeqForDirection(dPMM, c1o1, vvx, vvy, vvz) - mfcbb;
+      //                      mfbcb = D3Q27System::getIncompFeqForDirection(dMPM, c1o1, vvx, vvy, vvz) - mfbcb;
+      //                      mfbbc = D3Q27System::getIncompFeqForDirection(dMMP, c1o1, vvx, vvy, vvz) - mfbbc;
+      //                      mfccb = D3Q27System::getIncompFeqForDirection(dPPM, c1o1, vvx, vvy, vvz) - mfccb;
+      //                      mfacb = D3Q27System::getIncompFeqForDirection(d0PM, c1o1, vvx, vvy, vvz) - mfacb;
+      //                      mfcbc = D3Q27System::getIncompFeqForDirection(dPMP, c1o1, vvx, vvy, vvz) - mfcbc;
+      //                      mfabc = D3Q27System::getIncompFeqForDirection(d0MP, c1o1, vvx, vvy, vvz) - mfabc;
+      //                      mfbcc = D3Q27System::getIncompFeqForDirection(dMPP, c1o1, vvx, vvy, vvz) - mfbcc;
+      //                      mfbac = D3Q27System::getIncompFeqForDirection(dM0P, c1o1, vvx, vvy, vvz) - mfbac;
+      //                      mfccc = D3Q27System::getIncompFeqForDirection(dPPP, c1o1, vvx, vvy, vvz) - mfccc;
+      //                      mfacc = D3Q27System::getIncompFeqForDirection(d0PP, c1o1, vvx, vvy, vvz) - mfacc;
+      //                      mfcac = D3Q27System::getIncompFeqForDirection(dP0P, c1o1, vvx, vvy, vvz) - mfcac;
+      //                      mfaac = D3Q27System::getIncompFeqForDirection(d00P, c1o1, vvx, vvy, vvz) - mfaac;
+      //                      mfabb = D3Q27System::getIncompFeqForDirection(d0MM, c1o1, vvx, vvy, vvz) - mfabb;
+      //                      mfbab = D3Q27System::getIncompFeqForDirection(dM0M, c1o1, vvx, vvy, vvz) - mfbab;
+      //                      mfbba = D3Q27System::getIncompFeqForDirection(dMM0, c1o1, vvx, vvy, vvz) - mfbba;
+      //                      mfaab = D3Q27System::getIncompFeqForDirection(d00M, c1o1, vvx, vvy, vvz) - mfaab;
+      //                      mfcab = D3Q27System::getIncompFeqForDirection(dP0M, c1o1, vvx, vvy, vvz) - mfcab;
+      //                      mfaba = D3Q27System::getIncompFeqForDirection(d0M0, c1o1, vvx, vvy, vvz) - mfaba;
+      //                      mfcba = D3Q27System::getIncompFeqForDirection(dPM0, c1o1, vvx, vvy, vvz) - mfcba;
+      //                      mfbaa = D3Q27System::getIncompFeqForDirection(dM00, c1o1, vvx, vvy, vvz) - mfbaa;
+      //                      mfbca = D3Q27System::getIncompFeqForDirection(dMP0, c1o1, vvx, vvy, vvz) - mfbca;
+      //                      mfaaa = D3Q27System::getIncompFeqForDirection(d000, c1o1, vvx, vvy, vvz) - mfaaa;
+      //                      mfcaa = D3Q27System::getIncompFeqForDirection(dP00, c1o1, vvx, vvy, vvz) - mfcaa;
+      //                      mfaca = D3Q27System::getIncompFeqForDirection(d0P0, c1o1, vvx, vvy, vvz) - mfaca;
+      //                      mfcca = D3Q27System::getIncompFeqForDirection(dPP0, c1o1, vvx, vvy, vvz) - mfcca;
+      //                      mfbbb = D3Q27System::getIncompFeqForDirection(dMMM, c1o1, vvx, vvy, vvz) - mfbbb;
 
       //                  }
 						
@@ -5746,7 +5747,7 @@ void MultiphaseScaleDistributionLBMKernel::calculate(int step)
 //
 //                        findNeighbors(phaseFieldOld, x1, x2, x3);
 //                        findNeighbors2(phaseField, x1, x2, x3);
-//                        if ((phi[DIR_000] <= phiLim) && (phi2[DIR_000] > phiLim)) {
+//                        if ((phi[d000] <= phiLim) && (phi2[d000] > phiLim)) {
 //                        for (int fdir = D3Q27System::FSTARTDIR; fdir <= D3Q27System::FENDDIR; fdir++) {
 //                                if ((phi2[fdir] > phiLim) &&
 //                                    (!bcArray->isSolid(x1 + D3Q27System::DX1[fdir], x2 + D3Q27System::DX2[fdir],
diff --git a/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.h b/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.h
index 640c29797..7501a522c 100644
--- a/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.h
+++ b/src/cpu/MultiphaseFlow/LBM/MultiphaseScaleDistributionLBMKernel.h
@@ -174,14 +174,14 @@ inline bool MultiphaseScaleDistributionLBMKernel::isGasBoundaryNow(real phiLim,
 {
         using namespace vf::lbm::dir;
     return 
-           ((phi[DIR_000] <= phiLim) &&
-            ((phi[DIR_P00] > phiLim) || (phi[DIR_M00] > phiLim) || (phi[DIR_00P] > phiLim) || (phi[DIR_00M] > phiLim) ||
-             (phi[DIR_0M0] > phiLim) || (phi[DIR_0P0] > phiLim) || (phi[DIR_PP0] > phiLim) || (phi[DIR_PM0] > phiLim) ||
-             (phi[DIR_P0P] > phiLim) || (phi[DIR_P0M] > phiLim) || (phi[DIR_MP0] > phiLim) || (phi[DIR_MM0] > phiLim) ||
-             (phi[DIR_M0P] > phiLim) || (phi[DIR_M0M] > phiLim) || (phi[DIR_0PM] > phiLim) || (phi[DIR_0MM] > phiLim) ||
-             (phi[DIR_0PP] > phiLim) || (phi[DIR_0MP] > phiLim) || (phi[DIR_PPP] > phiLim) || (phi[DIR_PMP] > phiLim) ||
-             (phi[DIR_MPP] > phiLim) || (phi[DIR_MMP] > phiLim) || (phi[DIR_PPM] > phiLim) || (phi[DIR_PMM] > phiLim) ||
-             (phi[DIR_MPM] > phiLim) || (phi[DIR_MMM] > phiLim)));
+           ((phi[d000] <= phiLim) &&
+            ((phi[dP00] > phiLim) || (phi[dM00] > phiLim) || (phi[d00P] > phiLim) || (phi[d00M] > phiLim) ||
+             (phi[d0M0] > phiLim) || (phi[d0P0] > phiLim) || (phi[dPP0] > phiLim) || (phi[dPM0] > phiLim) ||
+             (phi[dP0P] > phiLim) || (phi[dP0M] > phiLim) || (phi[dMP0] > phiLim) || (phi[dMM0] > phiLim) ||
+             (phi[dM0P] > phiLim) || (phi[dM0M] > phiLim) || (phi[d0PM] > phiLim) || (phi[d0MM] > phiLim) ||
+             (phi[d0PP] > phiLim) || (phi[d0MP] > phiLim) || (phi[dPPP] > phiLim) || (phi[dPMP] > phiLim) ||
+             (phi[dMPP] > phiLim) || (phi[dMMP] > phiLim) || (phi[dPPM] > phiLim) || (phi[dPMM] > phiLim) ||
+             (phi[dMPM] > phiLim) || (phi[dMMM] > phiLim)));
 }
 
 #endif
diff --git a/src/cpu/core/BoundaryConditions/NonReflectingInflowBCStrategy.cpp b/src/cpu/core/BoundaryConditions/NonReflectingInflowBCStrategy.cpp
index d84a8fac2..237f1debb 100644
--- a/src/cpu/core/BoundaryConditions/NonReflectingInflowBCStrategy.cpp
+++ b/src/cpu/core/BoundaryConditions/NonReflectingInflowBCStrategy.cpp
@@ -38,7 +38,6 @@
 
 NonReflectingInflowBCStrategy::NonReflectingInflowBCStrategy()
 {
-    BCStrategy::type         = BCStrategy::NonReflectingInflowBCStrategy;
     BCStrategy::preCollision = true;
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/BoundaryConditions/NonReflectingOutflowBCStrategy.cpp b/src/cpu/core/BoundaryConditions/NonReflectingOutflowBCStrategy.cpp
index fe8407bc5..4d52c1f0d 100644
--- a/src/cpu/core/BoundaryConditions/NonReflectingOutflowBCStrategy.cpp
+++ b/src/cpu/core/BoundaryConditions/NonReflectingOutflowBCStrategy.cpp
@@ -38,7 +38,6 @@
 
 NonReflectingOutflowBCStrategy::NonReflectingOutflowBCStrategy()
 {
-    BCStrategy::type         = BCStrategy::NonReflectingOutflowBCStrategy;
     BCStrategy::preCollision = true;
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/BoundaryConditions/NonReflectingOutflowWithRelaxationBCStrategy.cpp b/src/cpu/core/BoundaryConditions/NonReflectingOutflowWithRelaxationBCStrategy.cpp
index a80a2d4e2..4f5c8e13d 100644
--- a/src/cpu/core/BoundaryConditions/NonReflectingOutflowWithRelaxationBCStrategy.cpp
+++ b/src/cpu/core/BoundaryConditions/NonReflectingOutflowWithRelaxationBCStrategy.cpp
@@ -38,7 +38,6 @@
 
 NonReflectingOutflowWithRelaxationBCStrategy::NonReflectingOutflowWithRelaxationBCStrategy()
 {
-    BCStrategy::type         = BCStrategy::NonReflectingOutflowWithRelaxationBCStrategy;
     BCStrategy::preCollision = true;
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/BoundaryConditions/SlipBCStrategy.cpp b/src/cpu/core/BoundaryConditions/SlipBCStrategy.cpp
index 5245de010..747f8b17c 100644
--- a/src/cpu/core/BoundaryConditions/SlipBCStrategy.cpp
+++ b/src/cpu/core/BoundaryConditions/SlipBCStrategy.cpp
@@ -4,7 +4,6 @@
 
 SlipBCStrategy::SlipBCStrategy()
 {
-    BCStrategy::type         = BCStrategy::SlipBCStrategy;
     BCStrategy::preCollision = false;
 }
 //////////////////////////////////////////////////////////////////////////
diff --git a/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp b/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp
index 2dbdcb637..6728a96f1 100644
--- a/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp
+++ b/src/cpu/core/SimulationObservers/InSituVTKSimulationObserver.cpp
@@ -191,7 +191,7 @@ void InSituVTKSimulationObserver::addData(SPtr<Block3D> block)
 
                     nodeNumbers(ix1, ix2, ix3) = nr++;
 
-                    distributions->getDistribution(f, ix1, ix2, ix3);
+                    distributions->getPreCollisionDistribution(f, ix1, ix2, ix3);
                     calcMacros(f, rho, vx1, vx2, vx3);
                     real press = D3Q27System::calcPress(f, rho, vx1, vx2, vx3);
 
-- 
GitLab