From 40eaf9bf8ad71b3e9e306824131fbf5ccf5696dd Mon Sep 17 00:00:00 2001
From: Anna Wellmann <a.wellmann@tu-bs.de>
Date: Wed, 6 Jul 2022 14:03:24 +0000
Subject: [PATCH] Replace dirZERO by dirREST

---
 src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp     |   2 +-
 src/cpu/VirtualFluidsCore/Grid/Grid3D.h       |   2 +-
 .../GridReaderFiles/GridReader.cpp            |   6 +-
 .../GridReaderGenerator/GridGenerator.cpp     |  12 +-
 src/gpu/VirtualFluids_GPU/FindQ/FindQ.cpp     |  36 ++--
 .../GPU/AdvectionDiffusionBCs27.cu            | 184 +++++++++---------
 src/gpu/VirtualFluids_GPU/GPU/CP27.cu         |   6 +-
 .../VirtualFluids_GPU/GPU/Calc2ndMoments27.cu |  36 ++--
 src/gpu/VirtualFluids_GPU/GPU/CalcConc27.cu   |  12 +-
 src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu    |  38 ++--
 src/gpu/VirtualFluids_GPU/GPU/Cascade27.cu    |  64 +++---
 src/gpu/VirtualFluids_GPU/GPU/Cumulant27.cu   |  48 ++---
 .../VirtualFluids_GPU/GPU/Cumulant27chim.cu   |  24 +--
 .../VirtualFluids_GPU/GPU/Cumulant_F3_27.cu   |  24 +--
 src/gpu/VirtualFluids_GPU/GPU/DragLift27.cu   |   8 +-
 .../VirtualFluids_GPU/GPU/ExchangeData27.cu   |  36 ++--
 src/gpu/VirtualFluids_GPU/GPU/Init27.cu       |  16 +-
 .../GPU/InitAdvectionDiffusion27.cu           |   6 +-
 .../VirtualFluids_GPU/GPU/KernelUtilities.h   |   6 +-
 src/gpu/VirtualFluids_GPU/GPU/NoSlipBCs27.cu  |  40 ++--
 src/gpu/VirtualFluids_GPU/GPU/Particles.cu    |  18 +-
 src/gpu/VirtualFluids_GPU/GPU/PressBCs27.cu   | 150 +++++++-------
 src/gpu/VirtualFluids_GPU/GPU/ScaleCF27.cu    | 128 ++++++------
 .../VirtualFluids_GPU/GPU/ScaleCF_F3_27.cu    |  12 +-
 src/gpu/VirtualFluids_GPU/GPU/ScaleFC27.cu    | 118 +++++------
 .../VirtualFluids_GPU/GPU/ScaleFC_F3_27.cu    |  12 +-
 .../VirtualFluids_GPU/GPU/SchlafferBCs27.cu   |  16 +-
 src/gpu/VirtualFluids_GPU/GPU/SetForcing27.cu |   6 +-
 src/gpu/VirtualFluids_GPU/GPU/SlipBCs27.cu    |  64 +++---
 src/gpu/VirtualFluids_GPU/GPU/StressBCs27.cu  |  20 +-
 .../VirtualFluids_GPU/GPU/ThinWallBCs27.cu    |  20 +-
 .../VirtualFluids_GPU/GPU/VelocityBCs27.cu    | 116 +++++------
 .../VirtualFluids_GPU/GPU/WaleCumulant27.cu   |   8 +-
 src/gpu/VirtualFluids_GPU/GPU/WallFunction.cu |  12 +-
 .../VirtualFluids_GPU/Init/PositionReader.cpp |   2 +-
 .../Mod27/ADComp27/ADComp27_Device.cu         |  14 +-
 .../Mod7/ADComp7/ADComp7_Device.cu            |   8 +-
 .../Mod27/ADIncomp27/ADIncomp27_Device.cu     |  18 +-
 .../Mod7/ADIncomp7/ADIncomp7_Device.cu        |   8 +-
 .../Compressible/BGK/BGKCompSP27_Device.cu    |   8 +-
 .../BGKPlus/BGKPlusCompSP27_Device.cu         |   8 +-
 .../Cascade/CascadeCompSP27_Device.cu         |   8 +-
 .../Cumulant/CumulantCompSP27_Device.cu       |   8 +-
 .../CumulantAll4CompSP27_Device.cu            |   8 +-
 .../CumulantK15/CumulantK15Comp_Device.cu     |   8 +-
 .../CumulantK15BulkComp_Device.cu             |   8 +-
 .../CumulantK15SpongeComp_Device.cu           |   8 +-
 .../CumulantK17/CumulantK17Comp_Device.cu     |   8 +-
 .../CumulantK17BulkComp_Device.cu             |   8 +-
 .../CumulantK17CompChim_Device.cu             |   8 +-
 .../CumulantK17CompChimStreamDevice.cu        |   8 +-
 .../CumulantK18/CumulantK18Comp_Device.cu     |   8 +-
 .../CumulantK20/CumulantK20Comp_Device.cu     |   8 +-
 .../Compressible/MRT/MRTCompSP27_Device.cu    |   8 +-
 .../BGK/BGKIncompSP27_Device.cu               |   8 +-
 .../BGKPlus/BGKPlusIncompSP27_Device.cu       |   8 +-
 .../Cascade/CascadeIncompSP27_Device.cu       |   8 +-
 .../Cumulant1hIncompSP27_Device.cu            |   8 +-
 .../CumulantIsoIncompSP27_Device.cu           |   8 +-
 .../CumulantK15/CumulantK15Incomp_Device.cu   |   8 +-
 .../MRT/MRTIncompSP27_Device.cu               |   8 +-
 .../PMCumulantOneCompSP27_Device.cu           |   8 +-
 ...lentViscosityCumulantK17CompChim_Device.cu |  24 +--
 .../CumulantK15/WaleCumulantK15Comp_Device.cu |   8 +-
 .../WaleBySoniMalavCumulantK15Comp_Device.cu  |   8 +-
 .../CumulantK17/WaleCumulantK17Comp_Device.cu |   8 +-
 .../WaleCumulantK17DebugComp_Device.cu        |   8 +-
 src/gpu/VirtualFluids_GPU/LBM/D3Q27.h         |   2 +-
 .../Output/UnstructuredGridWriter.hpp         |   6 +-
 .../InitCompAD27/InitCompAD27_Device.cu       |   6 +-
 .../InitCompSP27/InitCompSP27_Device.cu       |  18 +-
 .../InitIncompAD27/InitIncompAD27_Device.cu   |   6 +-
 .../InitSP27/InitSP27_Device.cu               |  10 +-
 73 files changed, 822 insertions(+), 822 deletions(-)

diff --git a/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp b/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp
index c1036c62a..5f422dcfd 100644
--- a/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp
+++ b/src/cpu/VirtualFluidsCore/Grid/Grid3D.cpp
@@ -1259,7 +1259,7 @@ void Grid3D::getSubBlocksZero(int ix1, int ix2, int ix3, int level, vector<SPtr<
         this->getSubBlocksEast(x1W, x2N, x3T, l, blockVector, levelDepth);
 }
 //////////////////////////////////////////////////////////////////////////
-void Grid3D::getNeighborBlocksForDirectionWithDirZero(int dir, int ix1, int ix2, int ix3, int level, int levelDepth,
+void Grid3D::getNeighborBlocksForDirectionWithdirREST(int dir, int ix1, int ix2, int ix3, int level, int levelDepth,
                                                       std::vector<SPtr<Block3D>> &blocks)
 {
     switch (dir) {
diff --git a/src/cpu/VirtualFluidsCore/Grid/Grid3D.h b/src/cpu/VirtualFluidsCore/Grid/Grid3D.h
index 3607a3f99..f98cc52f7 100644
--- a/src/cpu/VirtualFluidsCore/Grid/Grid3D.h
+++ b/src/cpu/VirtualFluidsCore/Grid/Grid3D.h
@@ -109,7 +109,7 @@ public:
     void getAllNeighbors(SPtr<Block3D> block, int level, int levelDepth, std::vector<SPtr<Block3D>> &blocks);
     void getNeighborBlocksForDirection(int dir, int ix1, int ix2, int ix3, int level, int levelDepth,
                                        std::vector<SPtr<Block3D>> &blocks);
-    void getNeighborBlocksForDirectionWithDirZero(int dir, int ix1, int ix2, int ix3, int level, int levelDepth,
+    void getNeighborBlocksForDirectionWithdirREST(int dir, int ix1, int ix2, int ix3, int level, int levelDepth,
                                                   std::vector<SPtr<Block3D>> &blocks);
 
     void getNeighborsZero(int ix1, int ix2, int ix3, int level, int levelDepth, std::vector<SPtr<Block3D>> &blocks);
diff --git a/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderFiles/GridReader.cpp b/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderFiles/GridReader.cpp
index 26b6603c2..fed5c1ace 100644
--- a/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderFiles/GridReader.cpp
+++ b/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderFiles/GridReader.cpp
@@ -658,9 +658,9 @@ void GridReader::modifyQElement(std::shared_ptr<BoundaryQs> boundaryQ, unsigned
 {
 	QforBoundaryConditions Q;
 	real* QQ = para->getParH(level)->geometryBC.q27[0];
-	Q.q27[dirZERO] = &QQ[dirZERO * para->getParH(level)->geometryBC.numberOfBCnodes];
+	Q.q27[dirREST] = &QQ[dirREST * para->getParH(level)->geometryBC.numberOfBCnodes];
 	for (unsigned int i = 0; i < boundaryQ->getSize(level); i++)
-		Q.q27[dirZERO][i] = 0.0f;
+		Q.q27[dirREST][i] = 0.0f;
 }
 
 /*------------------------------------------------------------------------------------------------*/
@@ -749,7 +749,7 @@ void GridReader::setQ27Size(QforBoundaryConditions &Q, real* QQ, unsigned int si
 	Q.q27[dirBS] = &QQ[dirBS  *sizeQ];
 	Q.q27[dirBN] = &QQ[dirBN  *sizeQ];
 	Q.q27[dirTS] = &QQ[dirTS  *sizeQ];
-	Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+	Q.q27[dirREST] = &QQ[dirREST*sizeQ];
 	Q.q27[dirTNE] = &QQ[dirTNE *sizeQ];
 	Q.q27[dirTSW] = &QQ[dirTSW *sizeQ];
 	Q.q27[dirTSE] = &QQ[dirTSE *sizeQ];
diff --git a/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp b/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
index a9a315d36..903a2a3c3 100644
--- a/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
+++ b/src/gpu/VirtualFluids_GPU/DataStructureInitializer/GridReaderGenerator/GridGenerator.cpp
@@ -762,7 +762,7 @@ void GridGenerator::allocArrays_BoundaryQs()
             Q.q27[dirBS] = &QQ[dirBS  *sizeQ];
             Q.q27[dirBN] = &QQ[dirBN  *sizeQ];
             Q.q27[dirTS] = &QQ[dirTS  *sizeQ];
-            Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+            Q.q27[dirREST] = &QQ[dirREST*sizeQ];
             Q.q27[dirTNE] = &QQ[dirTNE *sizeQ];
             Q.q27[dirTSW] = &QQ[dirTSW *sizeQ];
             Q.q27[dirTSE] = &QQ[dirTSE *sizeQ];
@@ -835,7 +835,7 @@ void GridGenerator::allocArrays_BoundaryQs()
             Q.q27[dirBS] = &QQ[dirBS  *sizeQ];
             Q.q27[dirBN] = &QQ[dirBN  *sizeQ];
             Q.q27[dirTS] = &QQ[dirTS  *sizeQ];
-            Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+            Q.q27[dirREST] = &QQ[dirREST*sizeQ];
             Q.q27[dirTNE] = &QQ[dirTNE *sizeQ];
             Q.q27[dirTSW] = &QQ[dirTSW *sizeQ];
             Q.q27[dirTSE] = &QQ[dirTSE *sizeQ];
@@ -881,7 +881,7 @@ void GridGenerator::allocArrays_BoundaryQs()
             Q.q27[dirBS] = &QQ[dirBS  *sizeQ];
             Q.q27[dirBN] = &QQ[dirBN  *sizeQ];
             Q.q27[dirTS] = &QQ[dirTS  *sizeQ];
-            Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+            Q.q27[dirREST] = &QQ[dirREST*sizeQ];
             Q.q27[dirTNE] = &QQ[dirTNE *sizeQ];
             Q.q27[dirTSW] = &QQ[dirTSW *sizeQ];
             Q.q27[dirTSE] = &QQ[dirTSE *sizeQ];
@@ -927,7 +927,7 @@ void GridGenerator::allocArrays_BoundaryQs()
             Q.q27[dirBS] = &QQ[dirBS  *sizeQ];
             Q.q27[dirBN] = &QQ[dirBN  *sizeQ];
             Q.q27[dirTS] = &QQ[dirTS  *sizeQ];
-            Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+            Q.q27[dirREST] = &QQ[dirREST*sizeQ];
             Q.q27[dirTNE] = &QQ[dirTNE *sizeQ];
             Q.q27[dirTSW] = &QQ[dirTSW *sizeQ];
             Q.q27[dirTSE] = &QQ[dirTSE *sizeQ];
@@ -1010,7 +1010,7 @@ void GridGenerator::allocArrays_BoundaryQs()
             Q.q27[dirBS] = &QQ[dirBS  *sizeQ];
             Q.q27[dirBN] = &QQ[dirBN  *sizeQ];
             Q.q27[dirTS] = &QQ[dirTS  *sizeQ];
-            Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+            Q.q27[dirREST] = &QQ[dirREST*sizeQ];
             Q.q27[dirTNE] = &QQ[dirTNE *sizeQ];
             Q.q27[dirTSW] = &QQ[dirTSW *sizeQ];
             Q.q27[dirTSE] = &QQ[dirTSE *sizeQ];
@@ -1026,7 +1026,7 @@ void GridGenerator::allocArrays_BoundaryQs()
             //////////////////////////////////////////////////////////////////
             for (int node_i = 0; node_i < numberOfGeometryNodes; node_i++)
             {
-                Q.q27[dirZERO][node_i] = 0.0f;
+                Q.q27[dirREST][node_i] = 0.0f;
             }
             //for(int test = 0; test < 3; test++)
             //{
diff --git a/src/gpu/VirtualFluids_GPU/FindQ/FindQ.cpp b/src/gpu/VirtualFluids_GPU/FindQ/FindQ.cpp
index 68378e7ae..0a538f022 100644
--- a/src/gpu/VirtualFluids_GPU/FindQ/FindQ.cpp
+++ b/src/gpu/VirtualFluids_GPU/FindQ/FindQ.cpp
@@ -57,7 +57,7 @@ void findQ(Parameter* para, int lev)
    Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
    Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
    Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-   Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+   Q.q27[dirREST] = &QQ[dirREST*sizeQ];
    Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
    Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
    Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
@@ -113,7 +113,7 @@ void findQ(Parameter* para, int lev)
                   //Q.q27[dirBS  ][QIN.numberOfBCnodes] = -1.f;
                   //Q.q27[dirBN  ][QIN.numberOfBCnodes] = 0.f;
                   //Q.q27[dirTS  ][QIN.numberOfBCnodes] = -1.f;
-                  //Q.q27[dirZERO][QIN.numberOfBCnodes] = -1.f;
+                  //Q.q27[dirREST][QIN.numberOfBCnodes] = -1.f;
                   //Q.q27[dirTNE ][QIN.numberOfBCnodes] = 0.f;
                   //Q.q27[dirTSW ][QIN.numberOfBCnodes] = -1.f;
                   //Q.q27[dirTSE ][QIN.numberOfBCnodes] = -1.f;
@@ -141,7 +141,7 @@ void findQ(Parameter* para, int lev)
                   //Q.q27[dirBS  ][QIN.numberOfBCnodes] = ON[dirTN  ];
                   //Q.q27[dirBN  ][QIN.numberOfBCnodes] = ON[dirTS  ];
                   //Q.q27[dirTS  ][QIN.numberOfBCnodes] = ON[dirBN  ];
-                  //Q.q27[dirZERO][QIN.numberOfBCnodes] = ON[dirZERO];
+                  //Q.q27[dirREST][QIN.numberOfBCnodes] = ON[dirREST];
                   //Q.q27[dirTNE ][QIN.numberOfBCnodes] = ON[dirBSW ];
                   //Q.q27[dirTSW ][QIN.numberOfBCnodes] = ON[dirBNE ];
                   //Q.q27[dirTSE ][QIN.numberOfBCnodes] = ON[dirBNW ];
@@ -169,7 +169,7 @@ void findQ(Parameter* para, int lev)
                   Q.q27[dirBS  ][QIN.numberOfBCnodes] = ON[dirBS  ];
                   Q.q27[dirBN  ][QIN.numberOfBCnodes] = ON[dirBN  ];
                   Q.q27[dirTS  ][QIN.numberOfBCnodes] = ON[dirTS  ];
-                  Q.q27[dirZERO][QIN.numberOfBCnodes] = ON[dirZERO];
+                  Q.q27[dirREST][QIN.numberOfBCnodes] = ON[dirREST];
                   Q.q27[dirTNE ][QIN.numberOfBCnodes] = ON[dirTNE ];
                   Q.q27[dirTSW ][QIN.numberOfBCnodes] = ON[dirTSW ];
                   Q.q27[dirTSE ][QIN.numberOfBCnodes] = ON[dirTSE ];
@@ -263,7 +263,7 @@ void findQ_MG( int nx, int ny, unsigned int nnx, unsigned int nny, unsigned int
    Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
    Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
    Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-   Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+   Q.q27[dirREST] = &QQ[dirREST*sizeQ];
    Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
    Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
    Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
@@ -343,7 +343,7 @@ void findQ_MG( int nx, int ny, unsigned int nnx, unsigned int nny, unsigned int
                   Q.q27[dirBS  ][QIN.numberOfBCnodes] = ON[dirBS  ];
                   Q.q27[dirBN  ][QIN.numberOfBCnodes] = ON[dirBN  ];
                   Q.q27[dirTS  ][QIN.numberOfBCnodes] = ON[dirTS  ];
-                  Q.q27[dirZERO][QIN.numberOfBCnodes] = ON[dirZERO];
+                  Q.q27[dirREST][QIN.numberOfBCnodes] = ON[dirREST];
                   Q.q27[dirTNE ][QIN.numberOfBCnodes] = ON[dirTNE ];
                   Q.q27[dirTSW ][QIN.numberOfBCnodes] = ON[dirTSW ];
                   Q.q27[dirTSE ][QIN.numberOfBCnodes] = ON[dirTSE ];
@@ -464,7 +464,7 @@ void findQInflow(Parameter* para)
    Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
    Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
    Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-   Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+   Q.q27[dirREST] = &QQ[dirREST*sizeQ];
    Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
    Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
    Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
@@ -513,7 +513,7 @@ void findQInflow(Parameter* para)
                //Q.q27[dirBS  ][QIN.numberOfBCnodes] = (real)1.f;
                //Q.q27[dirBN  ][QIN.numberOfBCnodes] = (real)1.f;
                //Q.q27[dirTS  ][QIN.numberOfBCnodes] = (real)-1.f;
-               //Q.q27[dirZERO][QIN.numberOfBCnodes] = (real)-1.f;
+               //Q.q27[dirREST][QIN.numberOfBCnodes] = (real)-1.f;
                //Q.q27[dirTNE ][QIN.numberOfBCnodes] = (real)-1.f;
                //Q.q27[dirTSW ][QIN.numberOfBCnodes] = (real)-1.f;
                //Q.q27[dirTSE ][QIN.numberOfBCnodes] = (real)-1.f;
@@ -547,7 +547,7 @@ void findQInflow(Parameter* para)
 			   Q.q27[dirBS  ][QIN.numberOfBCnodes] = (real)-1.f;
 			   Q.q27[dirBN  ][QIN.numberOfBCnodes] = (real)-1.f;
 			   Q.q27[dirTS  ][QIN.numberOfBCnodes] = (real)1.f;
-			   Q.q27[dirZERO][QIN.numberOfBCnodes] = (real)-1.f;
+			   Q.q27[dirREST][QIN.numberOfBCnodes] = (real)-1.f;
 			   Q.q27[dirTNE ][QIN.numberOfBCnodes] = (real)1.f;
 			   Q.q27[dirTSW ][QIN.numberOfBCnodes] = (real)1.f;
 			   Q.q27[dirTSE ][QIN.numberOfBCnodes] = (real)1.f;
@@ -604,7 +604,7 @@ void findQInflow(Parameter* para)
    //               Q.q27[dirBS  ][QIN.numberOfBCnodes] = ON[dirBS  ];
    //               Q.q27[dirBN  ][QIN.numberOfBCnodes] = ON[dirBN  ];
    //               Q.q27[dirTS  ][QIN.numberOfBCnodes] = ON[dirTS  ];
-   //               Q.q27[dirZERO][QIN.numberOfBCnodes] = ON[dirZERO];
+   //               Q.q27[dirREST][QIN.numberOfBCnodes] = ON[dirREST];
    //               Q.q27[dirTNE ][QIN.numberOfBCnodes] = ON[dirTNE ];
    //               Q.q27[dirTSW ][QIN.numberOfBCnodes] = ON[dirTSW ];
    //               Q.q27[dirTSE ][QIN.numberOfBCnodes] = ON[dirTSE ];
@@ -663,7 +663,7 @@ void findQInflow(Parameter* para)
    //               Q.q27[dirBS  ][QIN.numberOfBCnodes] = ON[dirBS  ];
    //               Q.q27[dirBN  ][QIN.numberOfBCnodes] = ON[dirBN  ];
    //               Q.q27[dirTS  ][QIN.numberOfBCnodes] = ON[dirTS  ];
-   //               Q.q27[dirZERO][QIN.numberOfBCnodes] = ON[dirZERO];
+   //               Q.q27[dirREST][QIN.numberOfBCnodes] = ON[dirREST];
    //               Q.q27[dirTNE ][QIN.numberOfBCnodes] = ON[dirTNE ];
    //               Q.q27[dirTSW ][QIN.numberOfBCnodes] = ON[dirTSW ];
    //               Q.q27[dirTSE ][QIN.numberOfBCnodes] = ON[dirTSE ];
@@ -830,7 +830,7 @@ void findQOutflow(Parameter* para)
    Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
    Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
    Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-   Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+   Q.q27[dirREST] = &QQ[dirREST*sizeQ];
    Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
    Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
    Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
@@ -878,7 +878,7 @@ void findQOutflow(Parameter* para)
                Q.q27[dirBS  ][QIN.numberOfBCnodes] = (real)-1.f;
                Q.q27[dirBN  ][QIN.numberOfBCnodes] = (real)-1.f;
                Q.q27[dirTS  ][QIN.numberOfBCnodes] = (real)1.f;
-               Q.q27[dirZERO][QIN.numberOfBCnodes] = (real)-1.f;
+               Q.q27[dirREST][QIN.numberOfBCnodes] = (real)-1.f;
                Q.q27[dirTNE ][QIN.numberOfBCnodes] = (real)1.f;
                Q.q27[dirTSW ][QIN.numberOfBCnodes] = (real)1.f;
                Q.q27[dirTSE ][QIN.numberOfBCnodes] = (real)1.f;
@@ -992,7 +992,7 @@ void findKforQOutflow(Parameter* para)
 //   QN.q27[dirBS  ] = &QQN[dirBS  *sizeQN];
 //   QN.q27[dirBN  ] = &QQN[dirBN  *sizeQN];
 //   QN.q27[dirTS  ] = &QQN[dirTS  *sizeQN];
-//   QN.q27[dirZERO] = &QQN[dirZERO*sizeQN];
+//   QN.q27[dirREST] = &QQN[dirREST*sizeQN];
 //   QN.q27[dirTNE ] = &QQN[dirTNE *sizeQN];
 //   QN.q27[dirTSW ] = &QQN[dirTSW *sizeQN];
 //   QN.q27[dirTSE ] = &QQN[dirTSE *sizeQN];
@@ -1112,7 +1112,7 @@ void findQPressX0(Parameter* para, int lev)
 	Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
 	Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
 	Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-	Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+	Q.q27[dirREST] = &QQ[dirREST*sizeQ];
 	Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
 	Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
 	Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
@@ -1161,7 +1161,7 @@ void findQPressX0(Parameter* para, int lev)
 				Q.q27[dirBS  ][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirBN  ][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirTS  ][QIN.numberOfBCnodes] = (real)-1.f;
-				Q.q27[dirZERO][QIN.numberOfBCnodes] = (real)-1.f;
+				Q.q27[dirREST][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirTNE ][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirTSW ][QIN.numberOfBCnodes] = (real)1.f;
 				Q.q27[dirTSE ][QIN.numberOfBCnodes] = (real)-1.f;
@@ -1288,7 +1288,7 @@ void findQPressX1(Parameter* para, int lev)
 	Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
 	Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
 	Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-	Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+	Q.q27[dirREST] = &QQ[dirREST*sizeQ];
 	Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
 	Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
 	Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
@@ -1337,7 +1337,7 @@ void findQPressX1(Parameter* para, int lev)
 				Q.q27[dirBS  ][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirBN  ][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirTS  ][QIN.numberOfBCnodes] = (real)-1.f;
-				Q.q27[dirZERO][QIN.numberOfBCnodes] = (real)-1.f;
+				Q.q27[dirREST][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirTNE ][QIN.numberOfBCnodes] = (real)1.f;
 				Q.q27[dirTSW ][QIN.numberOfBCnodes] = (real)-1.f;
 				Q.q27[dirTSE ][QIN.numberOfBCnodes] = (real)1.f;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/AdvectionDiffusionBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/AdvectionDiffusionBCs27.cu
index eb5f1bab9..510026522 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/AdvectionDiffusionBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/AdvectionDiffusionBCs27.cu
@@ -43,7 +43,7 @@ extern "C" __global__ void QADPress7(  real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -73,7 +73,7 @@ extern "C" __global__ void QADPress7(  real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -225,7 +225,7 @@ extern "C" __global__ void QADPress7(  real* DD,
 
       //drho   =    f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
       //            f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-      //            f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+      //            f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       //real vx1 =  ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
       //               ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -239,7 +239,7 @@ extern "C" __global__ void QADPress7(  real* DD,
       //               (-(f_BN - f_TS)  + (f_TN - f_BS))   + ((f_TE - f_BW)   - (f_BE - f_TW)) +
       //               (f_T - f_B); 
 
-      real rho0   =  (f_TNE+f_BSW)+(f_TSW+f_BNE)+(f_TSE+f_BNW)+(f_TNW+f_BSE)+(f_NE+f_SW)+(f_NW+f_SE)+(f_TE+f_BW)+(f_BE+f_TW)+(f_TN+f_BS)+(f_BN+f_TS)+(f_E+f_W)+(f_N+f_S)+(f_T+f_B)+ ((D.f[dirZERO])[kzero]);
+      real rho0   =  (f_TNE+f_BSW)+(f_TSW+f_BNE)+(f_TSE+f_BNW)+(f_TNW+f_BSE)+(f_NE+f_SW)+(f_NW+f_SE)+(f_TE+f_BW)+(f_BE+f_TW)+(f_TN+f_BS)+(f_BN+f_TS)+(f_E+f_W)+(f_N+f_S)+(f_T+f_B)+ ((D.f[dirREST])[kzero]);
       real rho    =  rho0 + c1o1;
       real OORho  =  c1o1/rho;
       real vx1    =  OORho*((f_TNE-f_BSW)+(f_BNE-f_TSW)+(f_TSE-f_BNW)+(f_BSE-f_TNW) +(f_NE-f_SW)+(f_SE-f_NW)+(f_TE-f_BW)+(f_BE-f_TW)+(f_E-f_W));
@@ -313,7 +313,7 @@ extern "C" __global__ void QADPress7(  real* DD,
 
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=0.1f;
+      //(D.f[dirREST])[k]=0.1f;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //(D7.f[1])[ke   ] = f7_E - feq7_E + feqW7_W; //E
       //(D7.f[2])[kw   ] = f7_W - feq7_W + feqW7_E; //W
@@ -484,7 +484,7 @@ extern "C" __global__ void QADPress27( real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -514,7 +514,7 @@ extern "C" __global__ void QADPress27( real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -546,7 +546,7 @@ extern "C" __global__ void QADPress27( real* DD,
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -576,7 +576,7 @@ extern "C" __global__ void QADPress27( real* DD,
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -680,7 +680,7 @@ extern "C" __global__ void QADPress27( real* DD,
       real f_TN   = (D.f[dirBS  ])[kbs  ];
       real f_TS   = (D.f[dirBN  ])[kbn  ];
       real f_BN   = (D.f[dirTS  ])[kts  ];
-      real f_ZERO = (D.f[dirZERO])[kzero];
+      real f_ZERO = (D.f[dirREST])[kzero];
       real f_BSW  = (D.f[dirTNE ])[ktne ];
       real f_BNE  = (D.f[dirTSW ])[ktsw ];
       real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -732,7 +732,7 @@ extern "C" __global__ void QADPress27( real* DD,
       real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      real f27_ZERO = (D27.f[dirZERO])[kzero];
+      real f27_ZERO = (D27.f[dirREST])[kzero];
       real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -866,7 +866,7 @@ extern "C" __global__ void QADPress27( real* DD,
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -896,7 +896,7 @@ extern "C" __global__ void QADPress27( real* DD,
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -908,7 +908,7 @@ extern "C" __global__ void QADPress27( real* DD,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       q = q_dirE[k];   if (q>=c0o1 && q<=c1o1) (D27.f[dirW  ])[kw  ]=(c2o1*feqW27_W  -(f27_E  *(q*omegaD-c1o1)-omegaD*feq27_E  *(q-c1o1))/(omegaD-c1o1)+f27_W  *q)/(q+c1o1);
       q = q_dirW[k];   if (q>=c0o1 && q<=c1o1) (D27.f[dirE  ])[ke  ]=(c2o1*feqW27_E  -(f27_W  *(q*omegaD-c1o1)-omegaD*feq27_W  *(q-c1o1))/(omegaD-c1o1)+f27_E  *q)/(q+c1o1);
@@ -1013,7 +1013,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
 		D.f[dirBS] = &DD[dirBS  *size_Mat];
 		D.f[dirBN] = &DD[dirBN  *size_Mat];
 		D.f[dirTS] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE] = &DD[dirTSE *size_Mat];
@@ -1043,7 +1043,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
 		D.f[dirTN] = &DD[dirBS  *size_Mat];
 		D.f[dirTS] = &DD[dirBN  *size_Mat];
 		D.f[dirBN] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE] = &DD[dirBNW *size_Mat];
@@ -1075,7 +1075,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
 		D27.f[dirBS] = &DD27[dirBS  *size_Mat];
 		D27.f[dirBN] = &DD27[dirBN  *size_Mat];
 		D27.f[dirTS] = &DD27[dirTS  *size_Mat];
-		D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+		D27.f[dirREST] = &DD27[dirREST*size_Mat];
 		D27.f[dirTNE] = &DD27[dirTNE *size_Mat];
 		D27.f[dirTSW] = &DD27[dirTSW *size_Mat];
 		D27.f[dirTSE] = &DD27[dirTSE *size_Mat];
@@ -1105,7 +1105,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
 		D27.f[dirTN] = &DD27[dirBS  *size_Mat];
 		D27.f[dirTS] = &DD27[dirBN  *size_Mat];
 		D27.f[dirBN] = &DD27[dirTS  *size_Mat];
-		D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+		D27.f[dirREST] = &DD27[dirREST*size_Mat];
 		D27.f[dirTNE] = &DD27[dirBSW *size_Mat];
 		D27.f[dirTSW] = &DD27[dirBNE *size_Mat];
 		D27.f[dirTSE] = &DD27[dirBNW *size_Mat];
@@ -1180,7 +1180,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
 		real f_TN =   (D.f[dirBS])[kbs];
 		real f_TS =   (D.f[dirBN])[kbn];
 		real f_BN =   (D.f[dirTS])[kts];
-		real f_ZERO = (D.f[dirZERO])[kzero];
+		real f_ZERO = (D.f[dirREST])[kzero];
 		real f_BSW =  (D.f[dirTNE])[ktne];
 		real f_BNE =  (D.f[dirTSW])[ktsw];
 		real f_BNW =  (D.f[dirTSE])[ktse];
@@ -1230,7 +1230,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
 		real f27_TN =   (D27.f[dirBS])[kbs];
 		real f27_TS =   (D27.f[dirBN])[kbn];
 		real f27_BN =   (D27.f[dirTS])[kts];
-		real f27_ZERO = (D27.f[dirZERO])[kzero];
+		real f27_ZERO = (D27.f[dirREST])[kzero];
 		real f27_BSW =  (D27.f[dirTNE])[ktne];
 		real f27_BNE =  (D27.f[dirTSW])[ktsw];
 		real f27_BNW =  (D27.f[dirTSE])[ktse];
@@ -1362,7 +1362,7 @@ extern "C" __global__ void QADPressNEQNeighbor27(
         (D27.f[dirBS  ])[kNbs  ] = f27_TN  ;	
         (D27.f[dirBN  ])[kNbn  ] = f27_TS  ;	
         (D27.f[dirTS  ])[kNts  ] = f27_BN  ;	
-        (D27.f[dirZERO])[kNzero] = f27_ZERO;	
+        (D27.f[dirREST])[kNzero] = f27_ZERO;	
         (D27.f[dirTNE ])[kNtne ] = f27_BSW ;	
         (D27.f[dirTSW ])[kNtsw ] = f27_BNE ;	
         (D27.f[dirTSE ])[kNtse ] = f27_BNW ;	
@@ -1450,7 +1450,7 @@ extern "C" __global__ void QADVel7( real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1480,7 +1480,7 @@ extern "C" __global__ void QADVel7( real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1608,7 +1608,7 @@ extern "C" __global__ void QADVel7( real* DD,
 
       ////drho   =    f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
       ////            f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-      ////            f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+      ////            f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       //real vx1 =  ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
       //               ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -1622,7 +1622,7 @@ extern "C" __global__ void QADVel7( real* DD,
       //               (-(f_BN - f_TS)  + (f_TN - f_BS))   + ((f_TE - f_BW)   - (f_BE - f_TW)) +
       //               (f_T - f_B); 
 
-      real rho0   =  (f_TNE+f_BSW)+(f_TSW+f_BNE)+(f_TSE+f_BNW)+(f_TNW+f_BSE)+(f_NE+f_SW)+(f_NW+f_SE)+(f_TE+f_BW)+(f_BE+f_TW)+(f_TN+f_BS)+(f_BN+f_TS)+(f_E+f_W)+(f_N+f_S)+(f_T+f_B)+ ((D.f[dirZERO])[kzero]);
+      real rho0   =  (f_TNE+f_BSW)+(f_TSW+f_BNE)+(f_TSE+f_BNW)+(f_TNW+f_BSE)+(f_NE+f_SW)+(f_NW+f_SE)+(f_TE+f_BW)+(f_BE+f_TW)+(f_TN+f_BS)+(f_BN+f_TS)+(f_E+f_W)+(f_N+f_S)+(f_T+f_B)+ ((D.f[dirREST])[kzero]);
       real rho    =  rho0 + c1o1;
       real OORho  =  c1o1/rho;
       real vx1    =  OORho*((f_TNE-f_BSW)+(f_BNE-f_TSW)+(f_TSE-f_BNW)+(f_BSE-f_TNW) +(f_NE-f_SW)+(f_SE-f_NW)+(f_TE-f_BW)+(f_BE-f_TW)+(f_E-f_W));
@@ -1696,7 +1696,7 @@ extern "C" __global__ void QADVel7( real* DD,
 
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //(D7.f[1])[ke   ] = f7_E - feq7_E + feqW7_W; //E
       //(D7.f[2])[kw   ] = f7_W - feq7_W + feqW7_E; //W
@@ -1867,7 +1867,7 @@ extern "C" __global__ void QADVel27(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1897,7 +1897,7 @@ extern "C" __global__ void QADVel27(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1929,7 +1929,7 @@ extern "C" __global__ void QADVel27(real* DD,
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -1959,7 +1959,7 @@ extern "C" __global__ void QADVel27(real* DD,
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -2063,7 +2063,7 @@ extern "C" __global__ void QADVel27(real* DD,
       real f_TN   = (D.f[dirBS  ])[kbs  ];
       real f_TS   = (D.f[dirBN  ])[kbn  ];
       real f_BN   = (D.f[dirTS  ])[kts  ];
-      real f_ZERO = (D.f[dirZERO])[kzero];
+      real f_ZERO = (D.f[dirREST])[kzero];
       real f_BSW  = (D.f[dirTNE ])[ktne ];
       real f_BNE  = (D.f[dirTSW ])[ktsw ];
       real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -2115,7 +2115,7 @@ extern "C" __global__ void QADVel27(real* DD,
       //real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       //real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       //real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      //real f27_ZERO = (D27.f[dirZERO])[kzero];
+      //real f27_ZERO = (D27.f[dirREST])[kzero];
       //real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       //real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       //real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -2250,7 +2250,7 @@ extern "C" __global__ void QADVel27(real* DD,
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -2280,7 +2280,7 @@ extern "C" __global__ void QADVel27(real* DD,
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -2292,11 +2292,11 @@ extern "C" __global__ void QADVel27(real* DD,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //(D27.f[dirW  ])[kw  ]= four;
       //(D27.f[dirE  ])[ke  ]= four;
@@ -2454,7 +2454,7 @@ extern "C" __global__ void QAD7( real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2484,7 +2484,7 @@ extern "C" __global__ void QAD7( real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2628,7 +2628,7 @@ extern "C" __global__ void QAD7( real* DD,
       real vx1, vx2, vx3/*, drho*/;
       //drho   =    f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
       //            f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-      //            f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+      //            f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       //vx1    = ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
       //         ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -2642,7 +2642,7 @@ extern "C" __global__ void QAD7( real* DD,
       //vx3    = ((f_TSE - f_BNW) + (f_TNW - f_BSE)) + ((f_TNE - f_BSW) + (f_TSW - f_BNE)) +
       //         (-(f_BN - f_TS)  + (f_TN - f_BS))   + ((f_TE - f_BW)   - (f_BE - f_TW)) +
       //         (f_T - f_B); 
-      real rho0   =  (f_TNE+f_BSW)+(f_TSW+f_BNE)+(f_TSE+f_BNW)+(f_TNW+f_BSE)+(f_NE+f_SW)+(f_NW+f_SE)+(f_TE+f_BW)+(f_BE+f_TW)+(f_TN+f_BS)+(f_BN+f_TS)+(f_E+f_W)+(f_N+f_S)+(f_T+f_B)+ ((D.f[dirZERO])[kzero]);
+      real rho0   =  (f_TNE+f_BSW)+(f_TSW+f_BNE)+(f_TSE+f_BNW)+(f_TNW+f_BSE)+(f_NE+f_SW)+(f_NW+f_SE)+(f_TE+f_BW)+(f_BE+f_TW)+(f_TN+f_BS)+(f_BN+f_TS)+(f_E+f_W)+(f_N+f_S)+(f_T+f_B)+ ((D.f[dirREST])[kzero]);
       real rho    =  rho0 + c1o1;
       real OORho  =  c1o1/rho;
       vx1     =  OORho*((f_TNE-f_BSW)+(f_BNE-f_TSW)+(f_TSE-f_BNW)+(f_BSE-f_TNW) +(f_NE-f_SW)+(f_SE-f_NW)+(f_TE-f_BW)+(f_BE-f_TW)+(f_E-f_W));
@@ -2716,7 +2716,7 @@ extern "C" __global__ void QAD7( real* DD,
 
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //(D7.f[1])[ke   ] = f7_E - feq7_E + feqW7_W; //E
       //(D7.f[2])[kw   ] = f7_W - feq7_W + feqW7_E; //W
@@ -2887,7 +2887,7 @@ extern "C" __global__ void QADDirichlet27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2917,7 +2917,7 @@ extern "C" __global__ void QADDirichlet27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2949,7 +2949,7 @@ extern "C" __global__ void QADDirichlet27(
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -2979,7 +2979,7 @@ extern "C" __global__ void QADDirichlet27(
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -3083,7 +3083,7 @@ extern "C" __global__ void QADDirichlet27(
       real f_TN   = (D.f[dirBS  ])[kbs  ];
       real f_TS   = (D.f[dirBN  ])[kbn  ];
       real f_BN   = (D.f[dirTS  ])[kts  ];
-      real f_ZERO = (D.f[dirZERO])[kzero];
+      real f_ZERO = (D.f[dirREST])[kzero];
       real f_BSW  = (D.f[dirTNE ])[ktne ];
       real f_BNE  = (D.f[dirTSW ])[ktsw ];
       real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -3135,7 +3135,7 @@ extern "C" __global__ void QADDirichlet27(
       real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      real f27_ZERO = (D27.f[dirZERO])[kzero];
+      real f27_ZERO = (D27.f[dirREST])[kzero];
       real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -3237,7 +3237,7 @@ extern "C" __global__ void QADDirichlet27(
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -3267,7 +3267,7 @@ extern "C" __global__ void QADDirichlet27(
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -3279,7 +3279,7 @@ extern "C" __global__ void QADDirichlet27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=0.1f;
+      //(D.f[dirREST])[k]=0.1f;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       q = q_dirE[  ke   ]; if (q>=c0o1 && q<=c1o1) (D27.f[dirW  ])[kw  ]=(c2o1*feqW27_W  -(f27_E  *(q*omegaD-c1o1)-omegaD*feq27_E  *(q-c1o1))/(omegaD-c1o1)+f27_W  *q)/(q+c1o1);
       q = q_dirW[  kw   ]; if (q>=c0o1 && q<=c1o1) (D27.f[dirE  ])[ke  ]=(c2o1*feqW27_E  -(f27_W  *(q*omegaD-c1o1)-omegaD*feq27_W  *(q-c1o1))/(omegaD-c1o1)+f27_E  *q)/(q+c1o1);
@@ -3412,7 +3412,7 @@ extern "C" __global__ void QADBB27( real* DD,
    //   D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    //   D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    //   D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3442,7 +3442,7 @@ extern "C" __global__ void QADBB27( real* DD,
    //   D.f[dirTN  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirBSW *size_Mat];
    //   D.f[dirTSW ] = &DD[dirBNE *size_Mat];
    //   D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3474,7 +3474,7 @@ extern "C" __global__ void QADBB27( real* DD,
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -3504,7 +3504,7 @@ extern "C" __global__ void QADBB27( real* DD,
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -3608,7 +3608,7 @@ extern "C" __global__ void QADBB27( real* DD,
       //real f_TN   = (D.f[dirBS  ])[kbs  ];
       //real f_TS   = (D.f[dirBN  ])[kbn  ];
       //real f_BN   = (D.f[dirTS  ])[kts  ];
-      //real f_ZERO = (D.f[dirZERO])[kzero];
+      //real f_ZERO = (D.f[dirREST])[kzero];
       //real f_BSW  = (D.f[dirTNE ])[ktne ];
       //real f_BNE  = (D.f[dirTSW ])[ktsw ];
       //real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -3661,7 +3661,7 @@ extern "C" __global__ void QADBB27( real* DD,
       real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      //real f27_ZERO = (D27.f[dirZERO])[kzero];
+      //real f27_ZERO = (D27.f[dirREST])[kzero];
       real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -3763,7 +3763,7 @@ extern "C" __global__ void QADBB27( real* DD,
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -3793,7 +3793,7 @@ extern "C" __global__ void QADBB27( real* DD,
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -3805,7 +3805,7 @@ extern "C" __global__ void QADBB27( real* DD,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=0.1f;
+      //(D.f[dirREST])[k]=0.1f;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       q = q_dirE[k];   if (q>=c0o1 && q<=c1o1) (D27.f[dirW  ])[kw  ]=f27_E  ;
       q = q_dirW[k];   if (q>=c0o1 && q<=c1o1) (D27.f[dirE  ])[ke  ]=f27_W  ;
@@ -3928,7 +3928,7 @@ extern "C" __global__ void QNoSlipADincomp7(
    //   D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    //   D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    //   D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3958,7 +3958,7 @@ extern "C" __global__ void QNoSlipADincomp7(
    //   D.f[dirTN  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirBSW *size_Mat];
    //   D.f[dirTSW ] = &DD[dirBNE *size_Mat];
    //   D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4352,7 +4352,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4382,7 +4382,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4414,7 +4414,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -4444,7 +4444,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -4548,7 +4548,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       real f_TN   = (D.f[dirBS  ])[kbs  ];
       real f_TS   = (D.f[dirBN  ])[kbn  ];
       real f_BN   = (D.f[dirTS  ])[kts  ];
-      //real f_ZERO = (D.f[dirZERO])[kzero];
+      //real f_ZERO = (D.f[dirREST])[kzero];
       real f_BSW  = (D.f[dirTNE ])[ktne ];
       real f_BNE  = (D.f[dirTSW ])[ktsw ];
       real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -4580,7 +4580,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      real f27_ZERO = (D27.f[dirZERO])[kzero];
+      real f27_ZERO = (D27.f[dirREST])[kzero];
       real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -4682,7 +4682,7 @@ extern "C" __global__ void QNoSlipADincomp27(
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -4712,7 +4712,7 @@ extern "C" __global__ void QNoSlipADincomp27(
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -4724,7 +4724,7 @@ extern "C" __global__ void QNoSlipADincomp27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=0.1f;
+      //(D.f[dirREST])[k]=0.1f;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  real q;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -4834,7 +4834,7 @@ extern "C" __global__ void QADVeloIncomp7(
    //   D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    //   D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    //   D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4864,7 +4864,7 @@ extern "C" __global__ void QADVeloIncomp7(
    //   D.f[dirTN  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirBSW *size_Mat];
    //   D.f[dirTSW ] = &DD[dirBNE *size_Mat];
    //   D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -5312,7 +5312,7 @@ extern "C" __global__ void QADVeloIncomp27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -5342,7 +5342,7 @@ extern "C" __global__ void QADVeloIncomp27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -5374,7 +5374,7 @@ extern "C" __global__ void QADVeloIncomp27(
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -5404,7 +5404,7 @@ extern "C" __global__ void QADVeloIncomp27(
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -5508,7 +5508,7 @@ extern "C" __global__ void QADVeloIncomp27(
       real f_TN   = (D.f[dirBS  ])[kbs  ];
       real f_TS   = (D.f[dirBN  ])[kbn  ];
       real f_BN   = (D.f[dirTS  ])[kts  ];
-      //real f_ZERO = (D.f[dirZERO])[kzero];
+      //real f_ZERO = (D.f[dirREST])[kzero];
       real f_BSW  = (D.f[dirTNE ])[ktne ];
       real f_BNE  = (D.f[dirTSW ])[ktsw ];
       real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -5540,7 +5540,7 @@ extern "C" __global__ void QADVeloIncomp27(
       //real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       //real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       //real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      //real f27_ZERO = (D27.f[dirZERO])[kzero];
+      //real f27_ZERO = (D27.f[dirREST])[kzero];
       //real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       //real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       //real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -5647,7 +5647,7 @@ extern "C" __global__ void QADVeloIncomp27(
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -5677,7 +5677,7 @@ extern "C" __global__ void QADVeloIncomp27(
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -5689,7 +5689,7 @@ extern "C" __global__ void QADVeloIncomp27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       real q;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -5826,7 +5826,7 @@ extern "C" __global__ void QADPressIncomp7(int inx,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -5856,7 +5856,7 @@ extern "C" __global__ void QADPressIncomp7(int inx,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -6265,7 +6265,7 @@ extern "C" __global__ void QADPressIncomp27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -6295,7 +6295,7 @@ extern "C" __global__ void QADPressIncomp27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -6327,7 +6327,7 @@ extern "C" __global__ void QADPressIncomp27(
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -6357,7 +6357,7 @@ extern "C" __global__ void QADPressIncomp27(
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
       D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
       D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -6461,7 +6461,7 @@ extern "C" __global__ void QADPressIncomp27(
       real f_TN   = (D.f[dirBS  ])[kbs  ];
       real f_TS   = (D.f[dirBN  ])[kbn  ];
       real f_BN   = (D.f[dirTS  ])[kts  ];
-      //real f_ZERO = (D.f[dirZERO])[kzero];
+      //real f_ZERO = (D.f[dirREST])[kzero];
       real f_BSW  = (D.f[dirTNE ])[ktne ];
       real f_BNE  = (D.f[dirTSW ])[ktsw ];
       real f_BNW  = (D.f[dirTSE ])[ktse ];
@@ -6493,7 +6493,7 @@ extern "C" __global__ void QADPressIncomp27(
       //real f27_TN   = (D27.f[dirBS  ])[kbs  ];
       //real f27_TS   = (D27.f[dirBN  ])[kbn  ];
       //real f27_BN   = (D27.f[dirTS  ])[kts  ];
-      //real f27_ZERO = (D27.f[dirZERO])[kzero];
+      //real f27_ZERO = (D27.f[dirREST])[kzero];
       //real f27_BSW  = (D27.f[dirTNE ])[ktne ];
       //real f27_BNE  = (D27.f[dirTSW ])[ktsw ];
       //real f27_BNW  = (D27.f[dirTSE ])[ktse ];
@@ -6600,7 +6600,7 @@ extern "C" __global__ void QADPressIncomp27(
          D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
          D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
          D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -6630,7 +6630,7 @@ extern "C" __global__ void QADPressIncomp27(
          D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
          D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
          D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-         D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+         D27.f[dirREST] = &DD27[dirREST*size_Mat];
          D27.f[dirTNE ] = &DD27[dirBSW *size_Mat];
          D27.f[dirTSW ] = &DD27[dirBNE *size_Mat];
          D27.f[dirTSE ] = &DD27[dirBNW *size_Mat];
@@ -6642,7 +6642,7 @@ extern "C" __global__ void QADPressIncomp27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       real q;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/gpu/VirtualFluids_GPU/GPU/CP27.cu b/src/gpu/VirtualFluids_GPU/GPU/CP27.cu
index 20a33b992..2cceb3401 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/CP27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/CP27.cu
@@ -37,7 +37,7 @@ extern "C" __global__ void CalcCP27(real* DD,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -67,7 +67,7 @@ extern "C" __global__ void CalcCP27(real* DD,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -132,7 +132,7 @@ extern "C" __global__ void CalcCP27(real* DD,
                      (D.f[dirBE  ])[kbe ]+ (D.f[dirTW  ])[ktw ]+
                      (D.f[dirTN  ])[ktn ]+ (D.f[dirBS  ])[kbs ]+
                      (D.f[dirBN  ])[kbn ]+ (D.f[dirTS  ])[kts ]+
-                     (D.f[dirZERO])[kzero]+ 
+                     (D.f[dirREST])[kzero]+ 
                      (D.f[dirTNE ])[ktne]+ (D.f[dirTSW ])[ktsw]+ 
                      (D.f[dirTSE ])[ktse]+ (D.f[dirTNW ])[ktnw]+ 
                      (D.f[dirBNE ])[kbne]+ (D.f[dirBSW ])[kbsw]+ 
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Calc2ndMoments27.cu b/src/gpu/VirtualFluids_GPU/GPU/Calc2ndMoments27.cu
index e5569f5c1..5dc47af0f 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Calc2ndMoments27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Calc2ndMoments27.cu
@@ -41,7 +41,7 @@ extern "C" __global__ void LBCalc2ndMomentsIncompSP27(  real* kxyFromfcNEQ,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -71,7 +71,7 @@ extern "C" __global__ void LBCalc2ndMomentsIncompSP27(  real* kxyFromfcNEQ,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LBCalc2ndMomentsIncompSP27(  real* kxyFromfcNEQ,
 	  f_BS   = (D.f[dirBS  ])[kbs  ];
 	  f_BN   = (D.f[dirBN  ])[kbn  ];
 	  f_TS   = (D.f[dirTS  ])[kts  ];
-	  //f_ZERO = (D.f[dirZERO])[kzero];
+	  //f_ZERO = (D.f[dirREST])[kzero];
 	  f_TNE  = (D.f[dirTNE ])[ktne ];
 	  f_TSW  = (D.f[dirTSW ])[ktsw ];
 	  f_TSE  = (D.f[dirTSE ])[ktse ];
@@ -240,7 +240,7 @@ extern "C" __global__ void LBCalc2ndMomentsCompSP27(real* kxyFromfcNEQ,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -270,7 +270,7 @@ extern "C" __global__ void LBCalc2ndMomentsCompSP27(real* kxyFromfcNEQ,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -343,7 +343,7 @@ extern "C" __global__ void LBCalc2ndMomentsCompSP27(real* kxyFromfcNEQ,
 	  f_BS   = (D.f[dirBS  ])[kbs  ];
 	  f_BN   = (D.f[dirBN  ])[kbn  ];
 	  f_TS   = (D.f[dirTS  ])[kts  ];
-	  f_ZERO = (D.f[dirZERO])[kzero];
+	  f_ZERO = (D.f[dirREST])[kzero];
 	  f_TNE  = (D.f[dirTNE ])[ktne ];
 	  f_TSW  = (D.f[dirTSW ])[ktsw ];
 	  f_TSE  = (D.f[dirTSE ])[ktse ];
@@ -466,7 +466,7 @@ extern "C" __global__ void LBCalc3rdMomentsIncompSP27(  real* CUMbbb,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -496,7 +496,7 @@ extern "C" __global__ void LBCalc3rdMomentsIncompSP27(  real* CUMbbb,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -535,7 +535,7 @@ extern "C" __global__ void LBCalc3rdMomentsIncompSP27(  real* CUMbbb,
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
@@ -900,7 +900,7 @@ extern "C" __global__ void LBCalc3rdMomentsCompSP27(real* CUMbbb,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -930,7 +930,7 @@ extern "C" __global__ void LBCalc3rdMomentsCompSP27(real* CUMbbb,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -969,7 +969,7 @@ extern "C" __global__ void LBCalc3rdMomentsCompSP27(real* CUMbbb,
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
@@ -1341,7 +1341,7 @@ extern "C" __global__ void LBCalcHigherMomentsIncompSP27(   real* CUMcbb,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -1371,7 +1371,7 @@ extern "C" __global__ void LBCalcHigherMomentsIncompSP27(   real* CUMcbb,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -1410,7 +1410,7 @@ extern "C" __global__ void LBCalcHigherMomentsIncompSP27(   real* CUMcbb,
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
@@ -1795,7 +1795,7 @@ extern "C" __global__ void LBCalcHigherMomentsCompSP27( real* CUMcbb,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -1825,7 +1825,7 @@ extern "C" __global__ void LBCalcHigherMomentsCompSP27( real* CUMcbb,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -1864,7 +1864,7 @@ extern "C" __global__ void LBCalcHigherMomentsCompSP27( real* CUMcbb,
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/CalcConc27.cu b/src/gpu/VirtualFluids_GPU/GPU/CalcConc27.cu
index f00d68cce..81ecbf8f4 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/CalcConc27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/CalcConc27.cu
@@ -344,7 +344,7 @@ extern "C" __global__ void CalcConc7( real* Conc,
 //       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
 //       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
 //       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-//       D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+//       D27.f[dirREST] = &DD27[dirREST*size_Mat];
 //       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
 //       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
 //       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -374,7 +374,7 @@ extern "C" __global__ void CalcConc7( real* Conc,
 //       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
 //       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
 //       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-//       D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+//       D27.f[dirREST] = &DD27[dirREST*size_Mat];
 //       D27.f[dirBSW ] = &DD27[dirTNE *size_Mat];
 //       D27.f[dirBNE ] = &DD27[dirTSW *size_Mat];
 //       D27.f[dirBNW ] = &DD27[dirTSE *size_Mat];
@@ -440,7 +440,7 @@ extern "C" __global__ void CalcConc7( real* Conc,
 //                         (D27.f[dirBE  ])[kbe ]+ (D27.f[dirTW  ])[ktw ]+
 //                         (D27.f[dirTN  ])[ktn ]+ (D27.f[dirBS  ])[kbs ]+
 //                         (D27.f[dirBN  ])[kbn ]+ (D27.f[dirTS  ])[kts ]+
-//                         (D27.f[dirZERO])[kzero]+ 
+//                         (D27.f[dirREST])[kzero]+ 
 //                         (D27.f[dirTNE ])[ktne]+ (D27.f[dirTSW ])[ktsw]+
 //                         (D27.f[dirTSE ])[ktse]+ (D27.f[dirTNW ])[ktnw]+
 //                         (D27.f[dirBNE ])[kbne]+ (D27.f[dirBSW ])[kbsw]+
@@ -605,7 +605,7 @@ extern "C" __global__ void GetPlaneConc27(real* Conc,
       D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
       D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
       D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -635,7 +635,7 @@ extern "C" __global__ void GetPlaneConc27(real* Conc,
       D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
       D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
       D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-      D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+      D27.f[dirREST] = &DD27[dirREST*size_Mat];
       D27.f[dirBSW ] = &DD27[dirTNE *size_Mat];
       D27.f[dirBNE ] = &DD27[dirTSW *size_Mat];
       D27.f[dirBNW ] = &DD27[dirTSE *size_Mat];
@@ -701,7 +701,7 @@ extern "C" __global__ void GetPlaneConc27(real* Conc,
                         (D27.f[dirBE  ])[kbe ]+ (D27.f[dirTW  ])[ktw ]+
                         (D27.f[dirTN  ])[ktn ]+ (D27.f[dirBS  ])[kbs ]+
                         (D27.f[dirBN  ])[kbn ]+ (D27.f[dirTS  ])[kts ]+
-                        (D27.f[dirZERO])[kzero]+ 
+                        (D27.f[dirREST])[kzero]+ 
                         (D27.f[dirTNE ])[ktne]+ (D27.f[dirTSW ])[ktsw]+
                         (D27.f[dirTSE ])[ktse]+ (D27.f[dirTNW ])[ktnw]+
                         (D27.f[dirBNE ])[kbne]+ (D27.f[dirBSW ])[kbsw]+
diff --git a/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu b/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu
index 19ffc7082..ca4c70340 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/CalcMac27.cu
@@ -103,7 +103,7 @@ extern "C" __global__ void LBCalcMacSP27( real* vxD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -133,7 +133,7 @@ extern "C" __global__ void LBCalcMacSP27( real* vxD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -203,7 +203,7 @@ extern "C" __global__ void LBCalcMacSP27( real* vxD,
                         (D.f[dirBE  ])[kbe ]+ (D.f[dirTW  ])[ktw ]+
                         (D.f[dirTN  ])[ktn ]+ (D.f[dirBS  ])[kbs ]+
                         (D.f[dirBN  ])[kbn ]+ (D.f[dirTS  ])[kts ]+
-                        (D.f[dirZERO])[kzero]+ 
+                        (D.f[dirREST])[kzero]+ 
                         (D.f[dirTNE ])[ktne]+ (D.f[dirTSW ])[ktsw]+ 
                         (D.f[dirTSE ])[ktse]+ (D.f[dirTNW ])[ktnw]+ 
                         (D.f[dirBNE ])[kbne]+ (D.f[dirBSW ])[kbsw]+ 
@@ -363,7 +363,7 @@ extern "C" __global__ void LBCalcMedSP27( real* vxD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -393,7 +393,7 @@ extern "C" __global__ void LBCalcMedSP27( real* vxD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -469,7 +469,7 @@ extern "C" __global__ void LBCalcMedSP27( real* vxD,
                         (D.f[dirBE  ])[kbe ]+ (D.f[dirTW  ])[ktw ]+
                         (D.f[dirTN  ])[ktn ]+ (D.f[dirBS  ])[kbs ]+
                         (D.f[dirBN  ])[kbn ]+ (D.f[dirTS  ])[kts ]+
-                        (D.f[dirZERO])[kzero]+ 
+                        (D.f[dirREST])[kzero]+ 
                         (D.f[dirTNE ])[ktne]+ (D.f[dirTSW ])[ktsw]+ 
                         (D.f[dirTSE ])[ktse]+ (D.f[dirTNW ])[ktnw]+ 
                         (D.f[dirBNE ])[kbne]+ (D.f[dirBSW ])[kbsw]+ 
@@ -587,7 +587,7 @@ extern "C" __global__ void LBCalcMedCompSP27( real* vxD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -617,7 +617,7 @@ extern "C" __global__ void LBCalcMedCompSP27( real* vxD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -702,7 +702,7 @@ extern "C" __global__ void LBCalcMedCompSP27( real* vxD,
 		  real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];
 		  real mfbca = (D.f[dirBN])[kb];//[kbn  ]; 
 		  real mfbac = (D.f[dirTS])[ks];//[kts  ]; 
-		  real mfbbb = (D.f[dirZERO])[k];//[kzero];
+		  real mfbbb = (D.f[dirREST])[k];//[kzero];
 		  real mfccc = (D.f[dirTNE])[k];//[ktne ]; 
 		  real mfaac = (D.f[dirTSW])[ksw];//[ktsw ]; 
 		  real mfcac = (D.f[dirTSE])[ks];//[ktse ];
@@ -744,7 +744,7 @@ extern "C" __global__ void LBCalcMedCompSP27( real* vxD,
 			 // (D.f[dirBE])[kbe] + (D.f[dirTW])[ktw] +
 			 // (D.f[dirTN])[ktn] + (D.f[dirBS])[kbs] +
 			 // (D.f[dirBN])[kbn] + (D.f[dirTS])[kts] +
-			 // (D.f[dirZERO])[kzero] +
+			 // (D.f[dirREST])[kzero] +
 			 // (D.f[dirTNE])[ktne] + (D.f[dirTSW])[ktsw] +
 			 // (D.f[dirTSE])[ktse] + (D.f[dirTNW])[ktnw] +
 			 // (D.f[dirBNE])[kbne] + (D.f[dirBSW])[kbsw] +
@@ -867,7 +867,7 @@ extern "C" __global__ void LBCalcMedCompAD27(
 		D.f[dirBS] = &DD[dirBS  *size_Mat];
 		D.f[dirBN] = &DD[dirBN  *size_Mat];
 		D.f[dirTS] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE] = &DD[dirTSE *size_Mat];
@@ -897,7 +897,7 @@ extern "C" __global__ void LBCalcMedCompAD27(
 		D.f[dirTN] = &DD[dirBS  *size_Mat];
 		D.f[dirTS] = &DD[dirBN  *size_Mat];
 		D.f[dirBN] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE] = &DD[dirBNW *size_Mat];
@@ -929,7 +929,7 @@ extern "C" __global__ void LBCalcMedCompAD27(
 		Dad.f[dirBS]   = &DD_AD[dirBS  *size_Mat];
 		Dad.f[dirBN]   = &DD_AD[dirBN  *size_Mat];
 		Dad.f[dirTS]   = &DD_AD[dirTS  *size_Mat];
-		Dad.f[dirZERO] = &DD_AD[dirZERO*size_Mat];
+		Dad.f[dirREST] = &DD_AD[dirREST*size_Mat];
 		Dad.f[dirTNE]  = &DD_AD[dirTNE *size_Mat];
 		Dad.f[dirTSW]  = &DD_AD[dirTSW *size_Mat];
 		Dad.f[dirTSE]  = &DD_AD[dirTSE *size_Mat];
@@ -959,7 +959,7 @@ extern "C" __global__ void LBCalcMedCompAD27(
 		Dad.f[dirTN]   = &DD_AD[dirBS  *size_Mat];
 		Dad.f[dirTS]   = &DD_AD[dirBN  *size_Mat];
 		Dad.f[dirBN]   = &DD_AD[dirTS  *size_Mat];
-		Dad.f[dirZERO] = &DD_AD[dirZERO*size_Mat];
+		Dad.f[dirREST] = &DD_AD[dirREST*size_Mat];
 		Dad.f[dirTNE]  = &DD_AD[dirBSW *size_Mat];
 		Dad.f[dirTSW]  = &DD_AD[dirBNE *size_Mat];
 		Dad.f[dirTSE]  = &DD_AD[dirBNW *size_Mat];
@@ -1046,7 +1046,7 @@ extern "C" __global__ void LBCalcMedCompAD27(
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ]; 
 			real mfbac = (D.f[dirTS])[ks];//[kts  ]; 
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];
+			real mfbbb = (D.f[dirREST])[k];//[kzero];
 			real mfccc = (D.f[dirTNE])[k];//[ktne ]; 
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ]; 
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];
@@ -1118,7 +1118,7 @@ extern "C" __global__ void LBCalcMedCompAD27(
 			mfbaa = (Dad.f[dirBS  ])[kbs ];
 			mfbca = (Dad.f[dirBN  ])[kb  ];
 			mfbac = (Dad.f[dirTS  ])[ks  ];
-			mfbbb = (Dad.f[dirZERO])[k   ];
+			mfbbb = (Dad.f[dirREST])[k   ];
 			mfccc = (Dad.f[dirTNE ])[k   ];
 			mfaac = (Dad.f[dirTSW ])[ksw ];
 			mfcac = (Dad.f[dirTSE ])[ks  ];
@@ -1375,7 +1375,7 @@ extern "C" __global__ void LBCalcMeasurePoints( real* vxMP,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1405,7 +1405,7 @@ extern "C" __global__ void LBCalcMeasurePoints( real* vxMP,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1472,7 +1472,7 @@ extern "C" __global__ void LBCalcMeasurePoints( real* vxMP,
                         (D.f[dirBE  ])[kbe ]+ (D.f[dirTW  ])[ktw ]+
                         (D.f[dirTN  ])[ktn ]+ (D.f[dirBS  ])[kbs ]+
                         (D.f[dirBN  ])[kbn ]+ (D.f[dirTS  ])[kts ]+
-                        (D.f[dirZERO])[kzero]+ 
+                        (D.f[dirREST])[kzero]+ 
                         (D.f[dirTNE ])[ktne]+ (D.f[dirTSW ])[ktsw]+ 
                         (D.f[dirTSE ])[ktse]+ (D.f[dirTNW ])[ktnw]+ 
                         (D.f[dirBNE ])[kbne]+ (D.f[dirBSW ])[kbsw]+ 
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Cascade27.cu b/src/gpu/VirtualFluids_GPU/GPU/Cascade27.cu
index 5c3a12551..189fdc914 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Cascade27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Cascade27.cu
@@ -56,7 +56,7 @@ extern "C" __global__ void LB_Kernel_Cascade_SP_27(     real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -86,7 +86,7 @@ extern "C" __global__ void LB_Kernel_Cascade_SP_27(     real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -145,7 +145,7 @@ extern "C" __global__ void LB_Kernel_Cascade_SP_27(     real omega,
 			real mfbaa = (D.f[dirBS  ])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS  ])[ks ];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k  ];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k  ];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE ])[k  ];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW ])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE ])[ks ];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -747,7 +747,7 @@ extern "C" __global__ void LB_Kernel_Cascade_SP_27(     real omega,
 			(D.f[ dirBS  ])[kbs ] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[ dirBN  ])[kb  ] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[ dirTS  ])[ks  ] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[ dirZERO])[k   ] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[ dirREST])[k   ] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[ dirTNE ])[k   ] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[ dirTSE ])[ks  ] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[ dirBNE ])[kb  ] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -883,7 +883,7 @@ extern "C" __global__ void LB_Kernel_Casc_Comp_SP_27(      real omega,
             D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
             D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
             D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -913,7 +913,7 @@ extern "C" __global__ void LB_Kernel_Casc_Comp_SP_27(      real omega,
             D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
             D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
             D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -972,7 +972,7 @@ extern "C" __global__ void LB_Kernel_Casc_Comp_SP_27(      real omega,
          real Sb    = (D.f[dirBS  ])[kbs  ];// +  c1over54 ;
          real Nb    = (D.f[dirBN  ])[kbn  ];// +  c1over54 ;
          real Sf    = (D.f[dirTS  ])[kts  ];// +  c1over54 ;
-         real R     = (D.f[dirZERO])[kzero];// +  c8over27 ;
+         real R     = (D.f[dirREST])[kzero];// +  c8over27 ;
          real Nef   = (D.f[dirTNE ])[ktne ];// +  c1over216;
          real Swf   = (D.f[dirTSW ])[ktsw ];// +  c1over216;
          real Sef   = (D.f[dirTSE ])[ktse ];// +  c1over216;
@@ -1627,7 +1627,7 @@ extern "C" __global__ void LB_Kernel_Casc_Comp_SP_27(      real omega,
 		 (D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;
 		 (D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;
 		 (D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;
-		 (D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;
+		 (D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;
 		 (D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;
 		 (D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;
 		 (D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;
@@ -1730,7 +1730,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_OHM_27(  real omega,
             D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
             D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
             D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -1760,7 +1760,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_OHM_27(  real omega,
             D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
             D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
             D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -1819,7 +1819,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_OHM_27(  real omega,
          real fBS   =  (D.f[dirBS  ])[kbs];
          real fBN   =  (D.f[dirBN  ])[kb ];//kbn
          real fTS   =  (D.f[dirTS  ])[ks ];//kts
-         real fZERO =  (D.f[dirZERO])[k  ];//kzero
+         real fZERO =  (D.f[dirREST])[k  ];//kzero
          real fTNE   = (D.f[dirTNE ])[k  ];//ktne
          real fTSW   = (D.f[dirTSW ])[ksw];//ktsw
          real fTSE   = (D.f[dirTSE ])[ks ];//ktse
@@ -2201,7 +2201,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_OHM_27(  real omega,
          //(D.f[ dirBS  ])[kbs ] =  c1o4*rho*(-mu221  - mu222 - mu211 - mu212 +  mu021 + mu022 + mu011 + mu012);   
          //(D.f[ dirBN  ])[kb  ] =  c1o4*rho*(-mu221  - mu222 + mu211 + mu212 +  mu021 + mu022 - mu011 - mu012);   //kbn
          //(D.f[ dirTS  ])[ks  ] =  c1o4*rho*( mu221  - mu222 + mu211 - mu212 -  mu021 + mu022 - mu011 + mu012);   //kts
-         //(D.f[ dirZERO])[k   ] =       rho*(-mu200  + mu220 - mu222 + mu202 -  mu020 + mu022 - mu002        )+rho0;   //kzero
+         //(D.f[ dirREST])[k   ] =       rho*(-mu200  + mu220 - mu222 + mu202 -  mu020 + mu022 - mu002        )+rho0;   //kzero
          //(D.f[ dirTNE ])[k   ] = c1o8*rho*(-mu221  + mu222 + mu211 - mu212 +  mu121 - mu122 - mu111 + mu112);   //ktne
          //(D.f[ dirTSE ])[ks  ] = c1o8*rho*(-mu221  + mu222 - mu211 + mu212 +  mu121 - mu122 + mu111 - mu112);   //ktse
          //(D.f[ dirBNE ])[kb  ] = c1o8*rho*( mu221  + mu222 - mu211 - mu212 -  mu121 - mu122 + mu111 + mu112);   //kbne
@@ -2228,7 +2228,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_OHM_27(  real omega,
          (D.f[ dirBS  ])[kbs ] =  c1o4*rho*(- mu222 + (- mu211                                   + mu022) + (                 + mu011                        ) + ( - mu221 - mu212        ) + (                 +  mu021 + mu012                        )                       );   
          (D.f[ dirBN  ])[kb  ] =  c1o4*rho*(- mu222 + (+ mu211                                   + mu022) + (                 - mu011                        ) + ( - mu221 + mu212        ) + (                 +  mu021 - mu012                        )                       );   //kbn
          (D.f[ dirTS  ])[ks  ] =  c1o4*rho*(- mu222 + (+ mu211                                   + mu022) + (                 - mu011                        ) + ( + mu221 - mu212        ) + (                 -  mu021 + mu012                        )                       );   //kts
-         (D.f[ dirZERO])[k   ] =       rho*(- mu222 + (                          + mu220 + mu202 + mu022) + (                         - mu200 - mu020 - mu002)                                                                                                                  )+rho0;   //kzero
+         (D.f[ dirREST])[k   ] =       rho*(- mu222 + (                          + mu220 + mu202 + mu022) + (                         - mu200 - mu020 - mu002)                                                                                                                  )+rho0;   //kzero
          (D.f[ dirTNE ])[k   ] = c1o8*rho*(+ mu222 + (+ mu211 +  mu121 + mu112                         )                                                      + ( - mu221 - mu212 - mu122) + ( - mu111                                                 )                       );   //ktne
          (D.f[ dirTSE ])[ks  ] = c1o8*rho*(+ mu222 + (- mu211 +  mu121 - mu112                         )                                                      + ( - mu221 + mu212 - mu122) + ( + mu111                                                 )                       );   //ktse
          (D.f[ dirBNE ])[kb  ] = c1o8*rho*(+ mu222 + (- mu211 -  mu121 + mu112                         )                                                      + ( + mu221 - mu212 - mu122) + ( + mu111                                                 )                       );   //kbne
@@ -2260,7 +2260,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_OHM_27(  real omega,
          //(D.f[ dirBS  ])[kbs ] = fTN   ;
          //(D.f[ dirBN  ])[kb  ] = fTS   ;
          //(D.f[ dirTS  ])[ks  ] = fBN   ;
-         //(D.f[ dirZERO])[k   ] = fZERO ;
+         //(D.f[ dirREST])[k   ] = fZERO ;
          //(D.f[ dirTNE ])[k   ] = fBSW  ;
          //(D.f[ dirTSE ])[ks  ] = fBNW  ;
          //(D.f[ dirBNE ])[kb  ] = fTSW  ;
@@ -2362,7 +2362,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_27(   real omega,
             D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
             D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
             D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -2392,7 +2392,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_27(   real omega,
             D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
             D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
             D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -2451,7 +2451,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_27(   real omega,
          real fBS   =  (D.f[dirBS  ])[kbs];
          real fBN   =  (D.f[dirBN  ])[kb ];//kbn
          real fTS   =  (D.f[dirTS  ])[ks ];//kts
-         real fZERO =  (D.f[dirZERO])[k  ];//kzero
+         real fZERO =  (D.f[dirREST])[k  ];//kzero
          real fTNE   = (D.f[dirTNE ])[k  ];//ktne
          real fTSW   = (D.f[dirTSW ])[ksw];//ktsw
          real fTSE   = (D.f[dirTSE ])[ks ];//ktse
@@ -2753,7 +2753,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_27(   real omega,
          (D.f[ dirBS  ])[kbs ] =  c1o4*rho*(-mu221  - mu222 - mu211 - mu212 +  mu021 + mu022 + mu011 + mu012);   
          (D.f[ dirBN  ])[kb  ] =  c1o4*rho*(-mu221  - mu222 + mu211 + mu212 +  mu021 + mu022 - mu011 - mu012);   //kbn
          (D.f[ dirTS  ])[ks  ] =  c1o4*rho*( mu221  - mu222 + mu211 - mu212 -  mu021 + mu022 - mu011 + mu012);   //kts
-         (D.f[ dirZERO])[k   ] =       rho*(-mu200  + mu220 - mu222 + mu202 -  mu020 + mu022 - mu002        )+rho0;   //kzero
+         (D.f[ dirREST])[k   ] =       rho*(-mu200  + mu220 - mu222 + mu202 -  mu020 + mu022 - mu002        )+rho0;   //kzero
          (D.f[ dirTNE ])[k   ] = c1o8*rho*(-mu221  + mu222 + mu211 - mu212 +  mu121 - mu122 - mu111 + mu112);   //ktne
          (D.f[ dirTSE ])[ks  ] = c1o8*rho*(-mu221  + mu222 - mu211 + mu212 +  mu121 - mu122 + mu111 - mu112);   //ktse
          (D.f[ dirBNE ])[kb  ] = c1o8*rho*( mu221  + mu222 - mu211 - mu212 -  mu121 - mu122 + mu111 + mu112);   //kbne
@@ -2785,7 +2785,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_27(   real omega,
          //(D.f[ dirBS  ])[kbs ] = fTN   ;
          //(D.f[ dirBN  ])[kb  ] = fTS   ;
          //(D.f[ dirTS  ])[ks  ] = fBN   ;
-         //(D.f[ dirZERO])[k   ] = fZERO ;
+         //(D.f[ dirREST])[k   ] = fZERO ;
          //(D.f[ dirTNE ])[k   ] = fBSW  ;
          //(D.f[ dirTSE ])[ks  ] = fBNW  ;
          //(D.f[ dirBNE ])[kb  ] = fTSW  ;
@@ -2887,7 +2887,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_Diff_27(real omega,
             D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
             D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
             D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -2917,7 +2917,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_Diff_27(real omega,
             D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
             D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
             D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-            D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+            D.f[dirREST] = &DDStart[dirREST*size_Mat];
             D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
             D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
             D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -2976,7 +2976,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_Diff_27(real omega,
          real fBS   =  (D.f[dirBS  ])[kbs];
          real fBN   =  (D.f[dirBN  ])[kb ];//kbn
          real fTS   =  (D.f[dirTS  ])[ks ];//kts
-         real fZERO =  (D.f[dirZERO])[k  ];//kzero
+         real fZERO =  (D.f[dirREST])[k  ];//kzero
          real fTNE   = (D.f[dirTNE ])[k  ];//ktne
          real fTSW   = (D.f[dirTSW ])[ksw];//ktsw
          real fTSE   = (D.f[dirTSE ])[ks ];//ktse
@@ -3275,7 +3275,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_Diff_27(real omega,
          (D.f[ dirBS  ])[kbs ] = fTN   -  c1o4*rho*(-mu221  - mu222 - mu211 - mu212 +  mu021 + mu022 + mu011 + mu012);   
          (D.f[ dirBN  ])[kb  ] = fTS   -  c1o4*rho*(-mu221  - mu222 + mu211 + mu212 +  mu021 + mu022 - mu011 - mu012);   //kbn
          (D.f[ dirTS  ])[ks  ] = fBN   -  c1o4*rho*( mu221  - mu222 + mu211 - mu212 -  mu021 + mu022 - mu011 + mu012);   //kts
-         (D.f[ dirZERO])[k   ] = fZERO -       rho*(-mu200  + mu220 - mu222 + mu202 -  mu020 + mu022 - mu002        );   //kzero
+         (D.f[ dirREST])[k   ] = fZERO -       rho*(-mu200  + mu220 - mu222 + mu202 -  mu020 + mu022 - mu002        );   //kzero
          (D.f[ dirTNE ])[k   ] = fBSW  - c1o8*rho*(-mu221  + mu222 + mu211 - mu212 +  mu121 - mu122 - mu111 + mu112);   //ktne
          (D.f[ dirTSE ])[ks  ] = fBNW  - c1o8*rho*(-mu221  + mu222 - mu211 + mu212 +  mu121 - mu122 + mu111 - mu112);   //ktse
          (D.f[ dirBNE ])[kb  ] = fTSW  - c1o8*rho*( mu221  + mu222 - mu211 - mu212 -  mu121 - mu122 + mu111 + mu112);   //kbne
@@ -3307,7 +3307,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_MS_Diff_27(real omega,
          //(D.f[ dirBS  ])[kbs ] = fTN   ;
          //(D.f[ dirBN  ])[kb  ] = fTS   ;
          //(D.f[ dirTS  ])[ks  ] = fBN   ;
-         //(D.f[ dirZERO])[k   ] = fZERO ;
+         //(D.f[ dirREST])[k   ] = fZERO ;
          //(D.f[ dirTNE ])[k   ] = fBSW  ;
          //(D.f[ dirTSE ])[ks  ] = fBNW  ;
          //(D.f[ dirBNE ])[kb  ] = fTSW  ;
@@ -3409,7 +3409,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_27(  real omega,
           D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
           D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
           D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-          D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+          D.f[dirREST] = &DDStart[dirREST*size_Mat];
           D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
           D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
           D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -3439,7 +3439,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_27(  real omega,
           D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
           D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
           D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-          D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+          D.f[dirREST] = &DDStart[dirREST*size_Mat];
           D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
           D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
           D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -3528,7 +3528,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_27(  real omega,
        f_BS   =  (D.f[dirBS  ])[kbs]+c1o54;
        f_BN   =  (D.f[dirBN  ])[kbn]+c1o54;
        f_TS   =  (D.f[dirTS  ])[kts]+c1o54;
-       f_ZERO =  (D.f[dirZERO])[kzero]+c8o27;
+       f_ZERO =  (D.f[dirREST])[kzero]+c8o27;
        f_TNE   = (D.f[dirTNE ])[ktne]+c1o216;
        f_TSW   = (D.f[dirTSW ])[ktsw]+c1o216;
        f_TSE   = (D.f[dirTSE ])[ktse]+c1o216;
@@ -3997,7 +3997,7 @@ extern "C" __global__ void LB_Kernel_Casc_SP_27(  real omega,
        (D.f[ dirBN ])[kbn] = f_TS-c1o54;
        (D.f[ dirTS ])[kts] = f_BN-c1o54;
 
-       (D.f[ dirZERO])[k] = f_ZERO-c8o27;
+       (D.f[ dirREST])[k] = f_ZERO-c8o27;
 
        (D.f[ dirTNE ])[ktne] = f_BSW-c1o216;
        (D.f[ dirTSE ])[ktse] = f_BNW-c1o216;
@@ -4105,7 +4105,7 @@ extern "C" __global__ void LB_Kernel_Casc27(real omega,
          D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
          D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
          D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-         D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+         D.f[dirREST] = &DDStart[dirREST*size_Mat];
          D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
          D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
          D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -4135,7 +4135,7 @@ extern "C" __global__ void LB_Kernel_Casc27(real omega,
          D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
          D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
          D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-         D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+         D.f[dirREST] = &DDStart[dirREST*size_Mat];
          D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
          D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
          D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -4224,7 +4224,7 @@ extern "C" __global__ void LB_Kernel_Casc27(real omega,
       f_BS   =  (D.f[dirBS  ])[kbs]+c1o54;
       f_BN   =  (D.f[dirBN  ])[kbn]+c1o54;
       f_TS   =  (D.f[dirTS  ])[kts]+c1o54;
-      f_ZERO =  (D.f[dirZERO])[kzero]+c8o27;
+      f_ZERO =  (D.f[dirREST])[kzero]+c8o27;
       f_TNE   = (D.f[dirTNE ])[ktne]+c1o216;
       f_TSW   = (D.f[dirTSW ])[ktsw]+c1o216;
       f_TSE   = (D.f[dirTSE ])[ktse]+c1o216;
@@ -4693,7 +4693,7 @@ extern "C" __global__ void LB_Kernel_Casc27(real omega,
       (D.f[ dirBN ])[kbn] = f_TS-c1o54;
       (D.f[ dirTS ])[kts] = f_BN-c1o54;
 
-      (D.f[ dirZERO])[k] = f_ZERO-c8o27;
+      (D.f[ dirREST])[k] = f_ZERO-c8o27;
 
       (D.f[ dirTNE ])[ktne] = f_BSW-c1o216;
       (D.f[ dirTSE ])[ktse] = f_BNW-c1o216;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Cumulant27.cu b/src/gpu/VirtualFluids_GPU/GPU/Cumulant27.cu
index 14c9b77ed..8765a7e78 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Cumulant27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Cumulant27.cu
@@ -65,7 +65,7 @@ extern "C" __global__ void LB_Kernel_Kum_AA2016_Comp_Bulk_SP_27(real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -95,7 +95,7 @@ extern "C" __global__ void LB_Kernel_Kum_AA2016_Comp_Bulk_SP_27(real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -154,7 +154,7 @@ extern "C" __global__ void LB_Kernel_Kum_AA2016_Comp_Bulk_SP_27(real omega,
 			real mfbaa = (D.f[dirBS  ])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS  ])[ks ];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k  ];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k  ];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE ])[k  ];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW ])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE ])[ks ];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -911,7 +911,7 @@ extern "C" __global__ void LB_Kernel_Kum_AA2016_Comp_Bulk_SP_27(real omega,
 			(D.f[ dirBS  ])[kbs ] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[ dirBN  ])[kb  ] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[ dirTS  ])[ks  ] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[ dirZERO])[k   ] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[ dirREST])[k   ] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[ dirTNE ])[k   ] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[ dirTSE ])[ks  ] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[ dirBNE ])[kb  ] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -1017,7 +1017,7 @@ extern "C" __global__ void LB_Kernel_Kum_IsoTest_SP_27( real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -1047,7 +1047,7 @@ extern "C" __global__ void LB_Kernel_Kum_IsoTest_SP_27( real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -1106,7 +1106,7 @@ extern "C" __global__ void LB_Kernel_Kum_IsoTest_SP_27( real omega,
 			real mfbaa = (D.f[dirBS  ])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS  ])[ks ];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k  ];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k  ];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE ])[k  ];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW ])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE ])[ks ];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1950,7 +1950,7 @@ extern "C" __global__ void LB_Kernel_Kum_IsoTest_SP_27( real omega,
 			(D.f[ dirBS  ])[kbs ] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[ dirBN  ])[kb  ] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[ dirTS  ])[ks  ] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[ dirZERO])[k   ] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[ dirREST])[k   ] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[ dirTNE ])[k   ] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[ dirTSE ])[ks  ] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[ dirBNE ])[kb  ] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -2058,7 +2058,7 @@ extern "C" __global__ void LB_Kernel_Kum_1h_SP_27(  real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -2088,7 +2088,7 @@ extern "C" __global__ void LB_Kernel_Kum_1h_SP_27(  real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -2175,7 +2175,7 @@ extern "C" __global__ void LB_Kernel_Kum_1h_SP_27(  real omega,
 			real mfbaa = (D.f[dirBS  ])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS  ])[ks ];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k  ];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k  ];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE ])[k  ];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW ])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE ])[ks ];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -3177,7 +3177,7 @@ extern "C" __global__ void LB_Kernel_Kum_1h_SP_27(  real omega,
 			(D.f[ dirBS  ])[kbs ] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[ dirBN  ])[kb  ] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[ dirTS  ])[ks  ] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[ dirZERO])[k   ] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[ dirREST])[k   ] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[ dirTNE ])[k   ] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[ dirTSE ])[ks  ] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[ dirBNE ])[kb  ] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -3280,7 +3280,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_SP_27(     real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -3310,7 +3310,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_SP_27(     real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -3397,7 +3397,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_SP_27(     real omega,
 			real mfbaa = (D.f[dirBS  ])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS  ])[ks ];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k  ];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k  ];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE ])[k  ];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW ])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE ])[ks ];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -4449,7 +4449,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_SP_27(     real omega,
 			(D.f[ dirBS  ])[kbs ] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[ dirBN  ])[kb  ] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[ dirTS  ])[ks  ] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[ dirZERO])[k   ] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[ dirREST])[k   ] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[ dirTNE ])[k   ] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[ dirTSE ])[ks  ] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[ dirBNE ])[kb  ] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -4552,7 +4552,7 @@ extern "C" __global__ void LB_Kernel_Kum_Comp_SP_27(    real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -4582,7 +4582,7 @@ extern "C" __global__ void LB_Kernel_Kum_Comp_SP_27(    real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -4641,7 +4641,7 @@ extern "C" __global__ void LB_Kernel_Kum_Comp_SP_27(    real omega,
 			real Sb    = (D.f[dirBS  ])[kbs  ];// +  c1over54 ;
 			real Nb    = (D.f[dirBN  ])[kbn  ];// +  c1over54 ;
 			real Sf    = (D.f[dirTS  ])[kts  ];// +  c1over54 ;
-			real R     = (D.f[dirZERO])[kzero];// +  c8over27 ;
+			real R     = (D.f[dirREST])[kzero];// +  c8over27 ;
 			real Nef   = (D.f[dirTNE ])[ktne ];// +  c1over216;
 			real Swf   = (D.f[dirTSW ])[ktsw ];// +  c1over216;
 			real Sef   = (D.f[dirTSE ])[ktse ];// +  c1over216;
@@ -5389,7 +5389,7 @@ extern "C" __global__ void LB_Kernel_Kum_Comp_SP_27(    real omega,
 			(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;
 			(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;
 			(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;
-			(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;
+			(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;
 			(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;
 			(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;
 			(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;
@@ -5495,7 +5495,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_Comp_SRT_SP_27(
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -5525,7 +5525,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_Comp_SRT_SP_27(
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -5585,7 +5585,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_Comp_SRT_SP_27(
 			real mfbaa = (D.f[dirBS  ])[kbs ];
 			real mfbca = (D.f[dirBN  ])[kb  ];
 			real mfbac = (D.f[dirTS  ])[ks  ];
-			real mfbbb = (D.f[dirZERO])[k   ];
+			real mfbbb = (D.f[dirREST])[k   ];
 			real mfccc = (D.f[dirTNE ])[k   ];
 			real mfaac = (D.f[dirTSW ])[ksw ];
 			real mfcac = (D.f[dirTSE ])[ks  ];
@@ -6366,7 +6366,7 @@ extern "C" __global__ void LB_Kernel_Kum_New_Comp_SRT_SP_27(
 			(D.f[dirBS  ])[kbs ] = mfbcc;
 			(D.f[dirBN  ])[kb  ] = mfbac;
 			(D.f[dirTS  ])[ks  ] = mfbca;
-			(D.f[dirZERO])[k   ] = mfbbb;
+			(D.f[dirREST])[k   ] = mfbbb;
 			(D.f[dirTNE ])[k   ] = mfaaa;
 			(D.f[dirTSE ])[ks  ] = mfaca;
 			(D.f[dirBNE ])[kb  ] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu b/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu
index 9dc75cfa6..14eb72fd9 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Cumulant27chim.cu
@@ -94,7 +94,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_
                 D.f[dirBS] = &DDStart[dirBS  *size_Mat];
                 D.f[dirBN] = &DDStart[dirBN  *size_Mat];
                 D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-                D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+                D.f[dirREST] = &DDStart[dirREST*size_Mat];
                 D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
                 D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
                 D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -124,7 +124,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_
                 D.f[dirTN] = &DDStart[dirBS  *size_Mat];
                 D.f[dirTS] = &DDStart[dirBN  *size_Mat];
                 D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-                D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+                D.f[dirREST] = &DDStart[dirREST*size_Mat];
                 D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
                 D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
                 D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -186,7 +186,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_
             real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
             real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
             real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-            real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+            real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
             real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
             real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
             real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -902,7 +902,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_errorDiffusion_chim_Comp_
             (D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
             (D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
             (D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-            (D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+            (D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
             (D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
             (D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
             (D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -1009,7 +1009,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27(
                 D.f[dirBS] = &DDStart[dirBS  *size_Mat];
                 D.f[dirBN] = &DDStart[dirBN  *size_Mat];
                 D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-                D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+                D.f[dirREST] = &DDStart[dirREST*size_Mat];
                 D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
                 D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
                 D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -1039,7 +1039,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27(
                 D.f[dirTN] = &DDStart[dirBS  *size_Mat];
                 D.f[dirTS] = &DDStart[dirBN  *size_Mat];
                 D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-                D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+                D.f[dirREST] = &DDStart[dirREST*size_Mat];
                 D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
                 D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
                 D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -1101,7 +1101,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27(
             real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
             real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
             real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-            real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+            real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
             real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
             real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
             real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1698,7 +1698,7 @@ extern "C" __global__ void Cumulant_One_preconditioned_chim_Comp_SP_27(
             (D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
             (D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
             (D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-            (D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+            (D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
             (D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
             (D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
             (D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
@@ -1805,7 +1805,7 @@ extern "C" __global__ void Cumulant_One_chim_Comp_SP_27(
                 D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
                 D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
                 D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-                D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+                D.f[dirREST] = &DDStart[dirREST*size_Mat];
                 D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
                 D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
                 D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -1835,7 +1835,7 @@ extern "C" __global__ void Cumulant_One_chim_Comp_SP_27(
                 D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
                 D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
                 D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-                D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+                D.f[dirREST] = &DDStart[dirREST*size_Mat];
                 D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
                 D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
                 D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -1873,7 +1873,7 @@ extern "C" __global__ void Cumulant_One_chim_Comp_SP_27(
             real mfbaa = (D.f[dirBS  ])[kbs ];
             real mfbca = (D.f[dirBN  ])[kb  ];
             real mfbac = (D.f[dirTS  ])[ks  ];
-            real mfbbb = (D.f[dirZERO])[k   ];
+            real mfbbb = (D.f[dirREST])[k   ];
             real mfccc = (D.f[dirTNE ])[k   ];
             real mfaac = (D.f[dirTSW ])[ksw ];
             real mfcac = (D.f[dirTSE ])[ks  ];
@@ -2220,7 +2220,7 @@ extern "C" __global__ void Cumulant_One_chim_Comp_SP_27(
             (D.f[dirBS  ])[kbs ] = mfbcc;
             (D.f[dirBN  ])[kb  ] = mfbac;
             (D.f[dirTS  ])[ks  ] = mfbca;
-            (D.f[dirZERO])[k   ] = mfbbb;
+            (D.f[dirREST])[k   ] = mfbbb;
             (D.f[dirTNE ])[k   ] = mfaaa;
             (D.f[dirTSE ])[ks  ] = mfaca;
             (D.f[dirBNE ])[kb  ] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Cumulant_F3_27.cu b/src/gpu/VirtualFluids_GPU/GPU/Cumulant_F3_27.cu
index 876348232..e6aaca2fa 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Cumulant_F3_27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Cumulant_F3_27.cu
@@ -70,7 +70,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -100,7 +100,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -189,7 +189,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];
 			real mfbca = (D.f[dirBN])[kb];
 			real mfbac = (D.f[dirTS])[ks];
-			real mfbbb = (D.f[dirZERO])[k];
+			real mfbbb = (D.f[dirREST])[k];
 			real mfccc = (D.f[dirTNE])[k];
 			real mfaac = (D.f[dirTSW])[ksw];
 			real mfcac = (D.f[dirTSE])[ks];
@@ -929,7 +929,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 			//(D.f[dirBS])[kbs] = mfbcc;
 			//(D.f[dirBN])[kb] = mfbac;
 			//(D.f[dirTS])[ks] = mfbca;
-			//(D.f[dirZERO])[k] = mfbbb;
+			//(D.f[dirREST])[k] = mfbbb;
 			//(D.f[dirTNE])[k] = mfaaa;
 			//(D.f[dirTSE])[ks] = mfaca;
 			//(D.f[dirBNE])[kb] = mfaac;
@@ -1042,7 +1042,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 //				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 //				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-//				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+//				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 //				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 //				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 //				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -1072,7 +1072,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 //				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 //				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-//				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+//				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 //				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 //				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 //				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -1161,7 +1161,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //			real mfbaa = (D.f[dirBS])[kbs];
 //			real mfbca = (D.f[dirBN])[kb];
 //			real mfbac = (D.f[dirTS])[ks];
-//			real mfbbb = (D.f[dirZERO])[k];
+//			real mfbbb = (D.f[dirREST])[k];
 //			real mfccc = (D.f[dirTNE])[k];
 //			real mfaac = (D.f[dirTSW])[ksw];
 //			real mfcac = (D.f[dirTSE])[ks];
@@ -1909,7 +1909,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //			(D.f[dirBS])[kbs] = mfbcc;
 //			(D.f[dirBN])[kb] = mfbac; 
 //			(D.f[dirTS])[ks] = mfbca; 
-//			(D.f[dirZERO])[k] = mfbbb;
+//			(D.f[dirREST])[k] = mfbbb;
 //			(D.f[dirTNE])[k] = mfaaa; 
 //			(D.f[dirTSE])[ks] = mfaca;
 //			(D.f[dirBNE])[kb] = mfaac;
@@ -2022,7 +2022,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 //				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 //				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-//				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+//				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 //				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 //				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 //				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -2052,7 +2052,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 //				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 //				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-//				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+//				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 //				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 //				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 //				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -2169,7 +2169,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 //			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 //			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-//			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+//			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 //			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 //			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 //			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -3029,7 +3029,7 @@ extern "C" __global__ void LB_PostProcessor_F3_2018_Fehlberg(real omega,
 //			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 //			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 //			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-//			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+//			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 //			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 //			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 //			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/GPU/DragLift27.cu b/src/gpu/VirtualFluids_GPU/GPU/DragLift27.cu
index 109902e11..8d5d855b0 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/DragLift27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/DragLift27.cu
@@ -40,7 +40,7 @@ extern "C" __global__ void DragLiftPost27(  real* DD,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -70,7 +70,7 @@ extern "C" __global__ void DragLiftPost27(  real* DD,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -305,7 +305,7 @@ extern "C" __global__ void DragLiftPre27(   real* DD,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -335,7 +335,7 @@ extern "C" __global__ void DragLiftPre27(   real* DD,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/ExchangeData27.cu b/src/gpu/VirtualFluids_GPU/GPU/ExchangeData27.cu
index e23862e9f..928fc0dbb 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/ExchangeData27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/ExchangeData27.cu
@@ -82,7 +82,7 @@ extern "C" __global__ void getSendFsPost27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -112,7 +112,7 @@ extern "C" __global__ void getSendFsPost27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void getSendFsPost27(real* DD,
       Dbuff.f[dirBS  ] = &bufferFs[dirBS  *buffmax];
       Dbuff.f[dirBN  ] = &bufferFs[dirBN  *buffmax];
       Dbuff.f[dirTS  ] = &bufferFs[dirTS  *buffmax];
-      Dbuff.f[dirZERO] = &bufferFs[dirZERO*buffmax];
+      Dbuff.f[dirREST] = &bufferFs[dirREST*buffmax];
       Dbuff.f[dirTNE ] = &bufferFs[dirTNE *buffmax];
       Dbuff.f[dirTSW ] = &bufferFs[dirTSW *buffmax];
       Dbuff.f[dirTSE ] = &bufferFs[dirTSE *buffmax];
@@ -172,7 +172,7 @@ extern "C" __global__ void getSendFsPost27(real* DD,
       //(Dbuff.f[dirBS  ])[k] = (D.f[dirBS  ])[kbs  ];
       //(Dbuff.f[dirBN  ])[k] = (D.f[dirBN  ])[kbn  ];
       //(Dbuff.f[dirTS  ])[k] = (D.f[dirTS  ])[kts  ];
-      //(Dbuff.f[dirZERO])[k] = (D.f[dirZERO])[kzero];
+      //(Dbuff.f[dirREST])[k] = (D.f[dirREST])[kzero];
       //(Dbuff.f[dirTNE ])[k] = (D.f[dirTNE ])[ktne ];
       //(Dbuff.f[dirTSW ])[k] = (D.f[dirTSW ])[ktsw ];
       //(Dbuff.f[dirTSE ])[k] = (D.f[dirTSE ])[ktse ];
@@ -199,7 +199,7 @@ extern "C" __global__ void getSendFsPost27(real* DD,
       (Dbuff.f[dirBS  ])[k] = (D.f[dirTN  ])[ktn  ];
       (Dbuff.f[dirBN  ])[k] = (D.f[dirTS  ])[kts  ];
       (Dbuff.f[dirTS  ])[k] = (D.f[dirBN  ])[kbn  ];
-      (Dbuff.f[dirZERO])[k] = (D.f[dirZERO])[kzero];
+      (Dbuff.f[dirREST])[k] = (D.f[dirREST])[kzero];
       (Dbuff.f[dirTNE ])[k] = (D.f[dirBSW ])[kbsw ];
       (Dbuff.f[dirTSW ])[k] = (D.f[dirBNE ])[kbne ];
       (Dbuff.f[dirTSE ])[k] = (D.f[dirBNW ])[kbnw ];
@@ -318,7 +318,7 @@ extern "C" __global__ void setRecvFsPost27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -348,7 +348,7 @@ extern "C" __global__ void setRecvFsPost27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -379,7 +379,7 @@ extern "C" __global__ void setRecvFsPost27(real* DD,
       Dbuff.f[dirBS  ] = &bufferFs[dirBS  *buffmax];
       Dbuff.f[dirBN  ] = &bufferFs[dirBN  *buffmax];
       Dbuff.f[dirTS  ] = &bufferFs[dirTS  *buffmax];
-      Dbuff.f[dirZERO] = &bufferFs[dirZERO*buffmax];
+      Dbuff.f[dirREST] = &bufferFs[dirREST*buffmax];
       Dbuff.f[dirTNE ] = &bufferFs[dirTNE *buffmax];
       Dbuff.f[dirTSW ] = &bufferFs[dirTSW *buffmax];
       Dbuff.f[dirTSE ] = &bufferFs[dirTSE *buffmax];
@@ -408,7 +408,7 @@ extern "C" __global__ void setRecvFsPost27(real* DD,
       //(D.f[dirBS  ])[kbs  ] = (Dbuff.f[dirBS  ])[k];
       //(D.f[dirBN  ])[kbn  ] = (Dbuff.f[dirBN  ])[k];
       //(D.f[dirTS  ])[kts  ] = (Dbuff.f[dirTS  ])[k];
-      //(D.f[dirZERO])[kzero] = (Dbuff.f[dirZERO])[k];
+      //(D.f[dirREST])[kzero] = (Dbuff.f[dirREST])[k];
       //(D.f[dirTNE ])[ktne ] = (Dbuff.f[dirTNE ])[k];
       //(D.f[dirTSW ])[ktsw ] = (Dbuff.f[dirTSW ])[k];
       //(D.f[dirTSE ])[ktse ] = (Dbuff.f[dirTSE ])[k];
@@ -435,7 +435,7 @@ extern "C" __global__ void setRecvFsPost27(real* DD,
       (D.f[dirTN  ])[ktn  ] = (Dbuff.f[dirBS  ])[k];
       (D.f[dirTS  ])[kts  ] = (Dbuff.f[dirBN  ])[k];
       (D.f[dirBN  ])[kbn  ] = (Dbuff.f[dirTS  ])[k];
-      (D.f[dirZERO])[kzero] = (Dbuff.f[dirZERO])[k];
+      (D.f[dirREST])[kzero] = (Dbuff.f[dirREST])[k];
       (D.f[dirBSW ])[kbsw ] = (Dbuff.f[dirTNE ])[k];
       (D.f[dirBNE ])[kbne ] = (Dbuff.f[dirTSW ])[k];
       (D.f[dirBNW ])[kbnw ] = (Dbuff.f[dirTSE ])[k];
@@ -553,7 +553,7 @@ extern "C" __global__ void getSendFsPre27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -583,7 +583,7 @@ extern "C" __global__ void getSendFsPre27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -614,7 +614,7 @@ extern "C" __global__ void getSendFsPre27(real* DD,
       Dbuff.f[dirBS  ] = &bufferFs[dirBS  *buffmax];
       Dbuff.f[dirBN  ] = &bufferFs[dirBN  *buffmax];
       Dbuff.f[dirTS  ] = &bufferFs[dirTS  *buffmax];
-      Dbuff.f[dirZERO] = &bufferFs[dirZERO*buffmax];
+      Dbuff.f[dirREST] = &bufferFs[dirREST*buffmax];
       Dbuff.f[dirTNE ] = &bufferFs[dirTNE *buffmax];
       Dbuff.f[dirTSW ] = &bufferFs[dirTSW *buffmax];
       Dbuff.f[dirTSE ] = &bufferFs[dirTSE *buffmax];
@@ -643,7 +643,7 @@ extern "C" __global__ void getSendFsPre27(real* DD,
       (Dbuff.f[dirBS  ])[k] = (D.f[dirBS  ])[kbs  ];
       (Dbuff.f[dirBN  ])[k] = (D.f[dirBN  ])[kbn  ];
       (Dbuff.f[dirTS  ])[k] = (D.f[dirTS  ])[kts  ];
-      (Dbuff.f[dirZERO])[k] = (D.f[dirZERO])[kzero];
+      (Dbuff.f[dirREST])[k] = (D.f[dirREST])[kzero];
       (Dbuff.f[dirTNE ])[k] = (D.f[dirTNE ])[ktne ];
       (Dbuff.f[dirTSW ])[k] = (D.f[dirTSW ])[ktsw ];
       (Dbuff.f[dirTSE ])[k] = (D.f[dirTSE ])[ktse ];
@@ -762,7 +762,7 @@ extern "C" __global__ void setRecvFsPre27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -792,7 +792,7 @@ extern "C" __global__ void setRecvFsPre27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -823,7 +823,7 @@ extern "C" __global__ void setRecvFsPre27(real* DD,
       Dbuff.f[dirBS  ] = &bufferFs[dirBS  *buffmax];
       Dbuff.f[dirBN  ] = &bufferFs[dirBN  *buffmax];
       Dbuff.f[dirTS  ] = &bufferFs[dirTS  *buffmax];
-      Dbuff.f[dirZERO] = &bufferFs[dirZERO*buffmax];
+      Dbuff.f[dirREST] = &bufferFs[dirREST*buffmax];
       Dbuff.f[dirTNE ] = &bufferFs[dirTNE *buffmax];
       Dbuff.f[dirTSW ] = &bufferFs[dirTSW *buffmax];
       Dbuff.f[dirTSE ] = &bufferFs[dirTSE *buffmax];
@@ -852,7 +852,7 @@ extern "C" __global__ void setRecvFsPre27(real* DD,
       (D.f[dirBS  ])[kbs  ] = (Dbuff.f[dirBS  ])[k];
       (D.f[dirBN  ])[kbn  ] = (Dbuff.f[dirBN  ])[k];
       (D.f[dirTS  ])[kts  ] = (Dbuff.f[dirTS  ])[k];
-      (D.f[dirZERO])[kzero] = (Dbuff.f[dirZERO])[k];
+      (D.f[dirREST])[kzero] = (Dbuff.f[dirREST])[k];
       (D.f[dirTNE ])[ktne ] = (Dbuff.f[dirTNE ])[k];
       (D.f[dirTSW ])[ktsw ] = (Dbuff.f[dirTSW ])[k];
       (D.f[dirTSE ])[ktse ] = (Dbuff.f[dirTSE ])[k];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Init27.cu b/src/gpu/VirtualFluids_GPU/GPU/Init27.cu
index 415ca1c8c..37b37a8f5 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Init27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Init27.cu
@@ -41,7 +41,7 @@ extern "C" __global__ void LBInit27( int myid,
    D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   D.f[dirREST] = &DD[dirREST*size_Mat];
    D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -140,7 +140,7 @@ extern "C" __global__ void LBInit27( int myid,
 
    real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-   (D.f[dirZERO])[kzero] =   c8o27* (drho-cu_sq);
+   (D.f[dirREST])[kzero] =   c8o27* (drho-cu_sq);
    (D.f[dirE   ])[ke   ] =   c2o27* (drho+c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq);
    (D.f[dirW   ])[kw   ] =   c2o27* (drho+c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq);
    (D.f[dirN   ])[kn   ] =   c2o27* (drho+c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq);
@@ -235,7 +235,7 @@ extern "C" __global__ void LBInitNonEqPartSP27( unsigned int* neighborX,
                 D.f[dirBS  ] = &DD[dirBS  *size_Mat];
                 D.f[dirBN  ] = &DD[dirBN  *size_Mat];
                 D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-                D.f[dirZERO] = &DD[dirZERO*size_Mat];
+                D.f[dirREST] = &DD[dirREST*size_Mat];
                 D.f[dirTNE ] = &DD[dirTNE *size_Mat];
                 D.f[dirTSW ] = &DD[dirTSW *size_Mat];
                 D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -265,7 +265,7 @@ extern "C" __global__ void LBInitNonEqPartSP27( unsigned int* neighborX,
                 D.f[dirTN  ] = &DD[dirBS  *size_Mat];
                 D.f[dirTS  ] = &DD[dirBN  *size_Mat];
                 D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-                D.f[dirZERO] = &DD[dirZERO*size_Mat];
+                D.f[dirREST] = &DD[dirREST*size_Mat];
                 D.f[dirBSW ] = &DD[dirTNE *size_Mat];
                 D.f[dirBNE ] = &DD[dirTSW *size_Mat];
                 D.f[dirBNW ] = &DD[dirTSE *size_Mat];
@@ -395,7 +395,7 @@ extern "C" __global__ void LBInitNonEqPartSP27( unsigned int* neighborX,
             //////////////////////////////////////////////////////////////////////////
             real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
             
-            (D.f[dirZERO])[kzero] =   c8o27* (drho-cu_sq);
+            (D.f[dirREST])[kzero] =   c8o27* (drho-cu_sq);
             (D.f[dirE   ])[ke   ] =   c2o27* (drho+c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq);
             (D.f[dirW   ])[kw   ] =   c2o27* (drho+c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq);
             (D.f[dirN   ])[kn   ] =   c2o27* (drho+c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq);
@@ -425,7 +425,7 @@ extern "C" __global__ void LBInitNonEqPartSP27( unsigned int* neighborX,
 
             //////////////////////////////////////////////////////////////////////////
 
-            (D.f[dirZERO])[kzero] += f_ZERO;
+            (D.f[dirREST])[kzero] += f_ZERO;
             (D.f[dirE   ])[ke   ] += f_E   ;
             (D.f[dirW   ])[kw   ] += f_E   ;
             (D.f[dirN   ])[kn   ] += f_N   ;
@@ -459,9 +459,9 @@ extern "C" __global__ void LBInitNonEqPartSP27( unsigned int* neighborX,
 	    {
 		    //////////////////////////////////////////////////////////////////////////
 		    Distributions27 D;
-		    D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		    D.f[dirREST] = &DD[dirREST*size_Mat];
 		    //////////////////////////////////////////////////////////////////////////
-		    (D.f[dirZERO])[k] = c96o1;
+		    (D.f[dirREST])[k] = c96o1;
 		    //////////////////////////////////////////////////////////////////////////
 	    }
    }
diff --git a/src/gpu/VirtualFluids_GPU/GPU/InitAdvectionDiffusion27.cu b/src/gpu/VirtualFluids_GPU/GPU/InitAdvectionDiffusion27.cu
index bc9aa3c84..c1647bfe9 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/InitAdvectionDiffusion27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/InitAdvectionDiffusion27.cu
@@ -281,7 +281,7 @@ extern "C" __global__ void InitAD27(
 //             D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
 //             D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
 //             D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-//             D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+//             D27.f[dirREST] = &DD27[dirREST*size_Mat];
 //             D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
 //             D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
 //             D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -311,7 +311,7 @@ extern "C" __global__ void InitAD27(
 //             D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
 //             D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
 //             D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-//             D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+//             D27.f[dirREST] = &DD27[dirREST*size_Mat];
 //             D27.f[dirBSW ] = &DD27[dirTNE *size_Mat];
 //             D27.f[dirBNE ] = &DD27[dirTSW *size_Mat];
 //             D27.f[dirBNW ] = &DD27[dirTSE *size_Mat];
@@ -390,7 +390,7 @@ extern "C" __global__ void InitAD27(
 //          ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 //          real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-//          (D27.f[dirZERO])[kzero] =   c8o27* ConcD*(c1o1-cu_sq);
+//          (D27.f[dirREST])[kzero] =   c8o27* ConcD*(c1o1-cu_sq);
 //          (D27.f[dirE   ])[ke   ] =   c2o27* ConcD*(c1o1+c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq);
 //          (D27.f[dirW   ])[kw   ] =   c2o27* ConcD*(c1o1+c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq);
 //          (D27.f[dirN   ])[kn   ] =   c2o27* ConcD*(c1o1+c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq);
diff --git a/src/gpu/VirtualFluids_GPU/GPU/KernelUtilities.h b/src/gpu/VirtualFluids_GPU/GPU/KernelUtilities.h
index 6a2894202..98faf8fa0 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/KernelUtilities.h
+++ b/src/gpu/VirtualFluids_GPU/GPU/KernelUtilities.h
@@ -61,7 +61,7 @@ __inline__ __device__ void getPointersToDistributions(Distributions27 &dist, rea
         dist.f[dirBS  ] = &distributionArray[dirBS  *numberOfLBnodes];
         dist.f[dirBN  ] = &distributionArray[dirBN  *numberOfLBnodes];
         dist.f[dirTS  ] = &distributionArray[dirTS  *numberOfLBnodes];
-        dist.f[dirZERO] = &distributionArray[dirZERO*numberOfLBnodes];
+        dist.f[dirREST] = &distributionArray[dirREST*numberOfLBnodes];
         dist.f[dirTNE ] = &distributionArray[dirTNE *numberOfLBnodes];
         dist.f[dirTSW ] = &distributionArray[dirTSW *numberOfLBnodes];
         dist.f[dirTSE ] = &distributionArray[dirTSE *numberOfLBnodes];
@@ -91,7 +91,7 @@ __inline__ __device__ void getPointersToDistributions(Distributions27 &dist, rea
          dist.f[dirTN  ] = &distributionArray[dirBS  *numberOfLBnodes];
          dist.f[dirTS  ] = &distributionArray[dirBN  *numberOfLBnodes];
          dist.f[dirBN  ] = &distributionArray[dirTS  *numberOfLBnodes];
-         dist.f[dirZERO] = &distributionArray[dirZERO*numberOfLBnodes];
+         dist.f[dirREST] = &distributionArray[dirREST*numberOfLBnodes];
          dist.f[dirTNE ] = &distributionArray[dirBSW *numberOfLBnodes];
          dist.f[dirTSW ] = &distributionArray[dirBNE *numberOfLBnodes];
          dist.f[dirTSE ] = &distributionArray[dirBNW *numberOfLBnodes];
@@ -123,7 +123,7 @@ __inline__ __device__ void getPointersToSubgridDistances(SubgridDistances27& sub
     subgridD.q[dirBS  ] = &subgridDistances[dirBS   *numberOfSubgridIndices];
     subgridD.q[dirBN  ] = &subgridDistances[dirBN   *numberOfSubgridIndices];
     subgridD.q[dirTS  ] = &subgridDistances[dirTS   *numberOfSubgridIndices];
-    subgridD.q[dirZERO] = &subgridDistances[dirZERO *numberOfSubgridIndices];
+    subgridD.q[dirREST] = &subgridDistances[dirREST *numberOfSubgridIndices];
     subgridD.q[dirTNE ] = &subgridDistances[dirTNE  *numberOfSubgridIndices];
     subgridD.q[dirTSW ] = &subgridDistances[dirTSW  *numberOfSubgridIndices];
     subgridD.q[dirTSE ] = &subgridDistances[dirTSE  *numberOfSubgridIndices];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/NoSlipBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/NoSlipBCs27.cu
index 2261a2930..163c91ebc 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/NoSlipBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/NoSlipBCs27.cu
@@ -47,7 +47,7 @@ extern "C" __global__ void QDevice3rdMomentsComp27(
       D.f[dirBS  ] = &distributions[dirBS  *numberOfLBnodes];
       D.f[dirBN  ] = &distributions[dirBN  *numberOfLBnodes];
       D.f[dirTS  ] = &distributions[dirTS  *numberOfLBnodes];
-      D.f[dirZERO] = &distributions[dirZERO*numberOfLBnodes];
+      D.f[dirREST] = &distributions[dirREST*numberOfLBnodes];
       D.f[dirTNE ] = &distributions[dirTNE *numberOfLBnodes];
       D.f[dirTSW ] = &distributions[dirTSW *numberOfLBnodes];
       D.f[dirTSE ] = &distributions[dirTSE *numberOfLBnodes];
@@ -77,7 +77,7 @@ extern "C" __global__ void QDevice3rdMomentsComp27(
       D.f[dirTN  ] = &distributions[dirBS  *numberOfLBnodes];
       D.f[dirTS  ] = &distributions[dirBN  *numberOfLBnodes];
       D.f[dirBN  ] = &distributions[dirTS  *numberOfLBnodes];
-      D.f[dirZERO] = &distributions[dirZERO*numberOfLBnodes];
+      D.f[dirREST] = &distributions[dirREST*numberOfLBnodes];
       D.f[dirTNE ] = &distributions[dirBSW *numberOfLBnodes];
       D.f[dirTSW ] = &distributions[dirBNE *numberOfLBnodes];
       D.f[dirTSE ] = &distributions[dirBNW *numberOfLBnodes];
@@ -196,7 +196,7 @@ extern "C" __global__ void QDevice3rdMomentsComp27(
       real vx1, vx2, vx3, drho, feq, q, m3;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 				f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-				f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+				f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -234,7 +234,7 @@ extern "C" __global__ void QDevice3rdMomentsComp27(
          D.f[dirBS  ] = &distributions[dirBS  *numberOfLBnodes];
          D.f[dirBN  ] = &distributions[dirBN  *numberOfLBnodes];
          D.f[dirTS  ] = &distributions[dirTS  *numberOfLBnodes];
-         D.f[dirZERO] = &distributions[dirZERO*numberOfLBnodes];
+         D.f[dirREST] = &distributions[dirREST*numberOfLBnodes];
          D.f[dirTNE ] = &distributions[dirTNE *numberOfLBnodes];
          D.f[dirTSW ] = &distributions[dirTSW *numberOfLBnodes];
          D.f[dirTSE ] = &distributions[dirTSE *numberOfLBnodes];
@@ -264,7 +264,7 @@ extern "C" __global__ void QDevice3rdMomentsComp27(
          D.f[dirTN  ] = &distributions[dirBS  *numberOfLBnodes];
          D.f[dirTS  ] = &distributions[dirBN  *numberOfLBnodes];
          D.f[dirBN  ] = &distributions[dirTS  *numberOfLBnodes];
-         D.f[dirZERO] = &distributions[dirZERO*numberOfLBnodes];
+         D.f[dirREST] = &distributions[dirREST*numberOfLBnodes];
          D.f[dirTNE ] = &distributions[dirBSW *numberOfLBnodes];
          D.f[dirTSW ] = &distributions[dirBNE *numberOfLBnodes];
          D.f[dirTSE ] = &distributions[dirBNW *numberOfLBnodes];
@@ -276,7 +276,7 @@ extern "C" __global__ void QDevice3rdMomentsComp27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-         //(D.f[dirZERO])[k]=c1o10;
+         //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  
 	  
@@ -593,7 +593,7 @@ extern "C" __global__ void QDeviceIncompHighNu27(int inx,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -623,7 +623,7 @@ extern "C" __global__ void QDeviceIncompHighNu27(int inx,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -742,7 +742,7 @@ extern "C" __global__ void QDeviceIncompHighNu27(int inx,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 				f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-				f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+				f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -780,7 +780,7 @@ extern "C" __global__ void QDeviceIncompHighNu27(int inx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -810,7 +810,7 @@ extern "C" __global__ void QDeviceIncompHighNu27(int inx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -822,7 +822,7 @@ extern "C" __global__ void QDeviceIncompHighNu27(int inx,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-         //(D.f[dirZERO])[k]=c1o10;
+         //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       real VeloX = c0o1;
       real VeloY = c0o1;
@@ -1089,7 +1089,7 @@ extern "C" __global__ void QDeviceCompHighNu27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1119,7 +1119,7 @@ extern "C" __global__ void QDeviceCompHighNu27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1264,7 +1264,7 @@ extern "C" __global__ void QDeviceCompHighNu27(
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 				f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-				f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+				f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -1302,7 +1302,7 @@ extern "C" __global__ void QDeviceCompHighNu27(
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1332,7 +1332,7 @@ extern "C" __global__ void QDeviceCompHighNu27(
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1344,7 +1344,7 @@ extern "C" __global__ void QDeviceCompHighNu27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-         //(D.f[dirZERO])[k]=c1o10;
+         //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       real VeloX = c0o1;
       real VeloY = c0o1;
@@ -1739,7 +1739,7 @@ extern "C" __global__ void QDeviceComp27(
       //!
       real drho = f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                   f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                  f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirZERO])[kzero]); 
+                  f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirREST])[kzero]); 
 
       real vx1  = (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                    ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -2125,7 +2125,7 @@ extern "C" __global__ void QDevice27(real* distributions,
       //!
       real drho = f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                   f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                  f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirZERO])[kzero]); 
+                  f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirREST])[kzero]); 
 
       real vx1  = (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                    ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
diff --git a/src/gpu/VirtualFluids_GPU/GPU/Particles.cu b/src/gpu/VirtualFluids_GPU/GPU/Particles.cu
index 117b6fec5..f5b4c76eb 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/Particles.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/Particles.cu
@@ -266,7 +266,7 @@ extern "C" __global__ void MoveParticles( real* coordX,
 			  fbsC   = &DD[dirBS  *size_Mat];
 			  fbnC   = &DD[dirBN  *size_Mat];
 			  ftsC   = &DD[dirTS  *size_Mat];
-			  fzeroC = &DD[dirZERO*size_Mat];
+			  fzeroC = &DD[dirREST*size_Mat];
 			  ftneC  = &DD[dirTNE *size_Mat];
 			  ftswC  = &DD[dirTSW *size_Mat];
 			  ftseC  = &DD[dirTSE *size_Mat];
@@ -296,7 +296,7 @@ extern "C" __global__ void MoveParticles( real* coordX,
 			  ftnC   = &DD[dirBS  *size_Mat];
 			  ftsC   = &DD[dirBN  *size_Mat];
 			  fbnC   = &DD[dirTS  *size_Mat];
-			  fzeroC = &DD[dirZERO*size_Mat];
+			  fzeroC = &DD[dirREST*size_Mat];
 			  fbswC  = &DD[dirTNE *size_Mat];
 			  fbneC  = &DD[dirTSW *size_Mat];
 			  fbnwC  = &DD[dirTSE *size_Mat];
@@ -1132,7 +1132,7 @@ extern "C" __global__ void MoveParticlesWithoutBCs(   real* coordX,
 			  fbsC   = &DD[dirBS  *size_Mat];
 			  fbnC   = &DD[dirBN  *size_Mat];
 			  ftsC   = &DD[dirTS  *size_Mat];
-			  fzeroC = &DD[dirZERO*size_Mat];
+			  fzeroC = &DD[dirREST*size_Mat];
 			  ftneC  = &DD[dirTNE *size_Mat];
 			  ftswC  = &DD[dirTSW *size_Mat];
 			  ftseC  = &DD[dirTSE *size_Mat];
@@ -1162,7 +1162,7 @@ extern "C" __global__ void MoveParticlesWithoutBCs(   real* coordX,
 			  ftnC   = &DD[dirBS  *size_Mat];
 			  ftsC   = &DD[dirBN  *size_Mat];
 			  fbnC   = &DD[dirTS  *size_Mat];
-			  fzeroC = &DD[dirZERO*size_Mat];
+			  fzeroC = &DD[dirREST*size_Mat];
 			  fbswC  = &DD[dirTNE *size_Mat];
 			  fbneC  = &DD[dirTSW *size_Mat];
 			  fbnwC  = &DD[dirTSE *size_Mat];
@@ -1955,7 +1955,7 @@ extern "C" __global__ void ParticleNoSlipDeviceComp27(real* coordX,
    //   D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    //   D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    //   D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1985,7 +1985,7 @@ extern "C" __global__ void ParticleNoSlipDeviceComp27(real* coordX,
    //   D.f[dirTN  ] = &DD[dirBS  *size_Mat];
    //   D.f[dirTS  ] = &DD[dirBN  *size_Mat];
    //   D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-   //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //   D.f[dirREST] = &DD[dirREST*size_Mat];
    //   D.f[dirTNE ] = &DD[dirBSW *size_Mat];
    //   D.f[dirTSW ] = &DD[dirBNE *size_Mat];
    //   D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2221,7 +2221,7 @@ extern "C" __global__ void ParticleNoSlipDeviceComp27(real* coordX,
    //   real vx1, vx2, vx3, drho;
    //   drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
    //             f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-   //             f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+   //             f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
    //   vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
    //             ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -2259,7 +2259,7 @@ extern "C" __global__ void ParticleNoSlipDeviceComp27(real* coordX,
    //      D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    //      D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    //      D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   //      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //      D.f[dirREST] = &DD[dirREST*size_Mat];
    //      D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    //      D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    //      D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2289,7 +2289,7 @@ extern "C" __global__ void ParticleNoSlipDeviceComp27(real* coordX,
    //      D.f[dirTN  ] = &DD[dirBS  *size_Mat];
    //      D.f[dirTS  ] = &DD[dirBN  *size_Mat];
    //      D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-   //      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //      D.f[dirREST] = &DD[dirREST*size_Mat];
    //      D.f[dirTNE ] = &DD[dirBSW *size_Mat];
    //      D.f[dirTSW ] = &DD[dirBNE *size_Mat];
    //      D.f[dirTSE ] = &DD[dirBNW *size_Mat];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/PressBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/PressBCs27.cu
index 8159b811c..1c6936876 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/PressBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/PressBCs27.cu
@@ -114,7 +114,7 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -144,7 +144,7 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -173,7 +173,7 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
       real f1_BS   = (D.f[dirBS  ])[k1bs  ];
       real f1_BN   = (D.f[dirBN  ])[k1bn  ];
       real f1_TS   = (D.f[dirTS  ])[k1ts  ];
-      //real f1_ZERO = (D.f[dirZERO])[k1zero];
+      //real f1_ZERO = (D.f[dirREST])[k1zero];
       real f1_TNE  = (D.f[dirTNE ])[k1tne ];
       real f1_TSW  = (D.f[dirTSW ])[k1tsw ];
       real f1_TSE  = (D.f[dirTSE ])[k1tse ];
@@ -201,7 +201,7 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
       real f_BS   = (D.f[dirBS  ])[kbs  ];
       real f_BN   = (D.f[dirBN  ])[kbn  ];
       real f_TS   = (D.f[dirTS  ])[kts  ];
-      //real f_ZERO = (D.f[dirZERO])[kzero];
+      //real f_ZERO = (D.f[dirREST])[kzero];
       real f_TNE  = (D.f[dirTNE ])[ktne ];
       real f_TSW  = (D.f[dirTSW ])[ktsw ];
       real f_TSE  = (D.f[dirTSE ])[ktse ];
@@ -217,10 +217,10 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
 	  //Dichte
       drho1  =  f1_TSE + f1_TNW + f1_TNE + f1_TSW + f1_BSE + f1_BNW + f1_BNE + f1_BSW +
                 f1_BN + f1_TS + f1_TN + f1_BS + f1_BE + f1_TW + f1_TE + f1_BW + f1_SE + f1_NW + f1_NE + f1_SW + 
-                f1_T + f1_B + f1_N + f1_S + f1_E + f1_W + ((D.f[dirZERO])[k1zero]); 
+                f1_T + f1_B + f1_N + f1_S + f1_E + f1_W + ((D.f[dirREST])[k1zero]); 
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
       //////////////////////////////////////////////////////////////////////////
 	  //Schallgeschwindigkeit
 	  real cs = c1o1 / sqrtf(c3o1);
@@ -338,7 +338,7 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -368,7 +368,7 @@ extern "C" __global__ void QInflowScaleByPressDevice27(  real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -571,7 +571,7 @@ extern "C" __global__ void QPressDeviceIncompNEQ27( real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -601,7 +601,7 @@ extern "C" __global__ void QPressDeviceIncompNEQ27( real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -633,7 +633,7 @@ extern "C" __global__ void QPressDeviceIncompNEQ27( real* rhoBC,
       f1_TN   = (D.f[dirBS  ])[k1bs  ];
       f1_TS   = (D.f[dirBN  ])[k1bn  ];
       f1_BN   = (D.f[dirTS  ])[k1ts  ];
-      f1_ZERO = (D.f[dirZERO])[k1zero];
+      f1_ZERO = (D.f[dirREST])[k1zero];
       f1_BSW  = (D.f[dirTNE ])[k1tne ];
       f1_BNE  = (D.f[dirTSW ])[k1tsw ];
       f1_BNW  = (D.f[dirTSE ])[k1tse ];
@@ -751,7 +751,7 @@ extern "C" __global__ void QPressDeviceIncompNEQ27( real* rhoBC,
       (D.f[dirBS  ])[kbs  ] = f1_TN  ;	
       (D.f[dirBN  ])[kbn  ] = f1_TS  ;	
       (D.f[dirTS  ])[kts  ] = f1_BN  ;	
-      (D.f[dirZERO])[kzero] = f1_ZERO;	
+      (D.f[dirREST])[kzero] = f1_ZERO;	
       (D.f[dirTNE ])[ktne ] = f1_BSW ;	
       (D.f[dirTSW ])[ktsw ] = f1_BNE ;	
       (D.f[dirTSE ])[ktse ] = f1_BNW ;	
@@ -931,7 +931,7 @@ extern "C" __global__ void QPressDeviceNEQ27(real* rhoBC,
       real f1_TN   = (dist.f[dirBS  ])[k1bs  ];
       real f1_TS   = (dist.f[dirBN  ])[k1bn  ];
       real f1_BN   = (dist.f[dirTS  ])[k1ts  ];
-      real f1_ZERO = (dist.f[dirZERO])[k1zero];
+      real f1_ZERO = (dist.f[dirREST])[k1zero];
       real f1_BSW  = (dist.f[dirTNE ])[k1tne ];
       real f1_BNE  = (dist.f[dirTSW ])[k1tsw ];
       real f1_BNW  = (dist.f[dirTSE ])[k1tse ];
@@ -946,7 +946,7 @@ extern "C" __global__ void QPressDeviceNEQ27(real* rhoBC,
       //!
       real drho1 = f1_TSE + f1_TNW + f1_TNE + f1_TSW + f1_BSE + f1_BNW + f1_BNE + f1_BSW +
                    f1_BN + f1_TS + f1_TN + f1_BS + f1_BE + f1_TW + f1_TE + f1_BW + f1_SE + f1_NW + f1_NE + f1_SW + 
-                   f1_T + f1_B + f1_N + f1_S + f1_E + f1_W + ((dist.f[dirZERO])[kzero]); 
+                   f1_T + f1_B + f1_N + f1_S + f1_E + f1_W + ((dist.f[dirREST])[kzero]); 
 
       real vx1  = (((f1_TSE - f1_BNW) - (f1_TNW - f1_BSE)) + ((f1_TNE - f1_BSW) - (f1_TSW - f1_BNE)) +
                    ((f1_BE - f1_TW)   + (f1_TE - f1_BW))   + ((f1_SE - f1_NW)   + (f1_NE - f1_SW)) +
@@ -1054,7 +1054,7 @@ extern "C" __global__ void QPressDeviceNEQ27(real* rhoBC,
       (dist.f[dirBS  ])[kbs  ] = f1_TN  ;
       (dist.f[dirBN  ])[kbn  ] = f1_TS  ;
       (dist.f[dirTS  ])[kts  ] = f1_BN  ;
-      (dist.f[dirZERO])[kzero] = f1_ZERO;
+      (dist.f[dirREST])[kzero] = f1_ZERO;
       (dist.f[dirTNE ])[ktne ] = f1_BSW ;
       (dist.f[dirTSW ])[ktsw ] = f1_BNE ;
       (dist.f[dirTSE ])[ktse ] = f1_BNW ;
@@ -1154,7 +1154,7 @@ extern "C" __global__ void LB_BC_Press_East27( int nx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1184,7 +1184,7 @@ extern "C" __global__ void LB_BC_Press_East27( int nx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1329,7 +1329,7 @@ extern "C" __global__ void LB_BC_Press_East27( int nx,
       f1_TN   = (D.f[dirBS  ])[k1bs  ];
       f1_TS   = (D.f[dirBN  ])[k1bn  ];
       f1_BN   = (D.f[dirTS  ])[k1ts  ];
-      f1_ZERO = (D.f[dirZERO])[k1zero];
+      f1_ZERO = (D.f[dirREST])[k1zero];
       f1_BSW  = (D.f[dirTNE ])[k1tne ];
       f1_BNE  = (D.f[dirTSW ])[k1tsw ];
       f1_BNW  = (D.f[dirTSE ])[k1tse ];
@@ -1362,7 +1362,7 @@ extern "C" __global__ void LB_BC_Press_East27( int nx,
       (D.f[dirBS  ])[kbs  ] = f1_TN  -c1o54*drho1;
       (D.f[dirBN  ])[kbn  ] = f1_TS  -c1o54*drho1;
       (D.f[dirTS  ])[kts  ] = f1_BN  -c1o54*drho1;
-      (D.f[dirZERO])[kzero] = f1_ZERO-c8o27*drho1;
+      (D.f[dirREST])[kzero] = f1_ZERO-c8o27*drho1;
       (D.f[dirTNE ])[ktne ] = f1_BSW -c1o216*drho1;
       (D.f[dirTSW ])[ktsw ] = f1_BNE -c1o216*drho1;
       (D.f[dirTSE ])[ktse ] = f1_BNW -c1o216*drho1;
@@ -1448,7 +1448,7 @@ extern "C" __global__ void QPressDevice27(real* rhoBC,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1478,7 +1478,7 @@ extern "C" __global__ void QPressDevice27(real* rhoBC,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1633,7 +1633,7 @@ extern "C" __global__ void QPressDevice27(real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1663,7 +1663,7 @@ extern "C" __global__ void QPressDevice27(real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1934,7 +1934,7 @@ extern "C" __global__ void QPressDeviceAntiBB27(   real* rhoBC,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1964,7 +1964,7 @@ extern "C" __global__ void QPressDeviceAntiBB27(   real* rhoBC,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2078,7 +2078,7 @@ extern "C" __global__ void QPressDeviceAntiBB27(   real* rhoBC,
       f_TNE  = (D.f[dirBSW ])[kbsw ];
       f_TNW  = (D.f[dirBSE ])[kbse ];
       f_TSE  = (D.f[dirBNW ])[kbnw ];
-      f_ZERO = (D.f[dirZERO])[kzero];
+      f_ZERO = (D.f[dirREST])[kzero];
       ////////////////////////////////////////////////////////////////////////////////
       //real vx1, vx2, vx3, drho;
       //vx1    =  ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
@@ -2124,7 +2124,7 @@ extern "C" __global__ void QPressDeviceAntiBB27(   real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2154,7 +2154,7 @@ extern "C" __global__ void QPressDeviceAntiBB27(   real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2443,7 +2443,7 @@ extern "C" __global__ void QPressDeviceFixBackflow27( real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2473,7 +2473,7 @@ extern "C" __global__ void QPressDeviceFixBackflow27( real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2510,7 +2510,7 @@ extern "C" __global__ void QPressDeviceFixBackflow27( real* rhoBC,
          (D.f[dirTSE])[ktse]   = c1o216 * deltaRho;
          (D.f[dirTNW])[ktnw]   = c1o216 * deltaRho;
          (D.f[dirBSE])[kbse]   = c1o216 * deltaRho;
-         (D.f[dirZERO])[kzero] = c8o27  * deltaRho;
+         (D.f[dirREST])[kzero] = c8o27  * deltaRho;
    }
 }
 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -2634,7 +2634,7 @@ extern "C" __global__ void QPressDeviceDirDepBot27(  real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2664,7 +2664,7 @@ extern "C" __global__ void QPressDeviceDirDepBot27(  real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2691,7 +2691,7 @@ extern "C" __global__ void QPressDeviceDirDepBot27(  real* rhoBC,
       f_TW   = (D.f[dirTW  ])[ktw  ];
       f_TN   = (D.f[dirTN  ])[ktn  ];
       f_TS   = (D.f[dirTS  ])[kts  ];
-      f_ZERO = (D.f[dirZERO])[kzero];
+      f_ZERO = (D.f[dirREST])[kzero];
       f_TNE  = (D.f[dirTNE ])[ktne ];
       f_TSW  = (D.f[dirTSW ])[ktsw ];
       f_TSE  = (D.f[dirTSE ])[ktse ];
@@ -2715,7 +2715,7 @@ extern "C" __global__ void QPressDeviceDirDepBot27(  real* rhoBC,
 
       //real cusq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      //(D.f[dirZERO])[kzero] = c8over27*  (drho-cusq);
+      //(D.f[dirREST])[kzero] = c8over27*  (drho-cusq);
       //(D.f[dirE])[ke]    = c2over27*  (drho+three*( vx1        )+c9over2*( vx1        )*( vx1        )-cusq);
       //(D.f[dirW])[kw]    = c2over27*  (drho+three*(-vx1        )+c9over2*(-vx1        )*(-vx1        )-cusq);
       //(D.f[dirN])[kn]     = c2over27*  (drho+three*(    vx2     )+c9over2*(     vx2    )*(     vx2    )-cusq);
@@ -2903,7 +2903,7 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2933,7 +2933,7 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2962,7 +2962,7 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
       real f1_BS   = (D.f[dirBS  ])[k1bs  ];
       real f1_BN   = (D.f[dirBN  ])[k1bn  ];
       real f1_TS   = (D.f[dirTS  ])[k1ts  ];
-      //real f1_ZERO = (D.f[dirZERO])[k1zero];
+      //real f1_ZERO = (D.f[dirREST])[k1zero];
       real f1_TNE  = (D.f[dirTNE ])[k1tne ];
       real f1_TSW  = (D.f[dirTSW ])[k1tsw ];
       real f1_TSE  = (D.f[dirTSE ])[k1tse ];
@@ -2990,7 +2990,7 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
       real f_BS   = (D.f[dirBS  ])[kbs  ];
       real f_BN   = (D.f[dirBN  ])[kbn  ];
       real f_TS   = (D.f[dirTS  ])[kts  ];
-      //real f_ZERO = (D.f[dirZERO])[kzero];
+      //real f_ZERO = (D.f[dirREST])[kzero];
       real f_TNE  = (D.f[dirTNE ])[ktne ];
       real f_TSW  = (D.f[dirTSW ])[ktsw ];
       real f_TSE  = (D.f[dirTSE ])[ktse ];
@@ -3007,10 +3007,10 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
 	  //Dichte
     //   drho1  =  f1_TSE + f1_TNW + f1_TNE + f1_TSW + f1_BSE + f1_BNW + f1_BNE + f1_BSW +
     //             f1_BN + f1_TS + f1_TN + f1_BS + f1_BE + f1_TW + f1_TE + f1_BW + f1_SE + f1_NW + f1_NE + f1_SW + 
-    //             f1_T + f1_B + f1_N + f1_S + f1_E + f1_W + ((D.f[dirZERO])[k1zero]); 
+    //             f1_T + f1_B + f1_N + f1_S + f1_E + f1_W + ((D.f[dirREST])[k1zero]); 
     //   drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
     //             f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-    //             f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+    //             f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
       
       //////////////////////////////////////////////////////////////////////////
 	  //Ux
@@ -3187,7 +3187,7 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3217,7 +3217,7 @@ extern "C" __global__ void QPressNoRhoDevice27(  real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3420,7 +3420,7 @@ extern "C" __global__ void QPressDeviceOld27(real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3450,7 +3450,7 @@ extern "C" __global__ void QPressDeviceOld27(real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3482,7 +3482,7 @@ extern "C" __global__ void QPressDeviceOld27(real* rhoBC,
       f1_TN   = (D.f[dirBS  ])[k1bs  ];
       f1_TS   = (D.f[dirBN  ])[k1bn  ];
       f1_BN   = (D.f[dirTS  ])[k1ts  ];
-      f1_ZERO = (D.f[dirZERO])[k1zero];
+      f1_ZERO = (D.f[dirREST])[k1zero];
       f1_BSW  = (D.f[dirTNE ])[k1tne ];
       f1_BNE  = (D.f[dirTSW ])[k1tsw ];
       f1_BNW  = (D.f[dirTSE ])[k1tse ];
@@ -3520,7 +3520,7 @@ extern "C" __global__ void QPressDeviceOld27(real* rhoBC,
       (D.f[dirBS  ])[kbs  ] = f1_TN  -c1o54*drho1;	//  c1o100;  // zero;  //
       (D.f[dirBN  ])[kbn  ] = f1_TS  -c1o54*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTS  ])[kts  ] = f1_BN  -c1o54*drho1;	//  c1o100;  // zero;  //
-      (D.f[dirZERO])[kzero] = f1_ZERO-c8o27*drho1;	//  c1o100;  // zero;  //
+      (D.f[dirREST])[kzero] = f1_ZERO-c8o27*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTNE ])[ktne ] = f1_BSW -c1o216*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTSW ])[ktsw ] = f1_BNE -c1o216*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTSE ])[ktse ] = f1_BNW -c1o216*drho1;	//  c1o100;  // zero;  //
@@ -3680,7 +3680,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3710,7 +3710,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3740,7 +3740,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
     //      kDistTest.f[dirBS  ] = &kTestRE[dirBS  *numberOfBCnodes];
     //      kDistTest.f[dirBN  ] = &kTestRE[dirBN  *numberOfBCnodes];
     //      kDistTest.f[dirTS  ] = &kTestRE[dirTS  *numberOfBCnodes];
-    //      kDistTest.f[dirZERO] = &kTestRE[dirZERO*numberOfBCnodes];
+    //      kDistTest.f[dirREST] = &kTestRE[dirREST*numberOfBCnodes];
     //      kDistTest.f[dirTNE ] = &kTestRE[dirTNE *numberOfBCnodes];
     //      kDistTest.f[dirTSW ] = &kTestRE[dirTSW *numberOfBCnodes];
     //      kDistTest.f[dirTSE ] = &kTestRE[dirTSE *numberOfBCnodes];
@@ -3769,7 +3769,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
    //   //f1_TN   = (D.f[dirBS  ])[k1bs  ];
    //   //f1_TS   = (D.f[dirBN  ])[k1bn  ];
    //   //f1_BN   = (D.f[dirTS  ])[k1ts  ];
-   //   //f1_ZERO = (D.f[dirZERO])[k1zero];
+   //   //f1_ZERO = (D.f[dirREST])[k1zero];
    //   //f1_BSW  = (D.f[dirTNE ])[k1tne ];
    //   //f1_BNE  = (D.f[dirTSW ])[k1tsw ];
    //   //f1_BNW  = (D.f[dirTSE ])[k1tse ];
@@ -3800,7 +3800,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
    //   f1_BS   = (D.f[dirBS  ])[k1bs  ];
    //   f1_BN   = (D.f[dirBN  ])[k1bn  ];
    //   f1_TS   = (D.f[dirTS  ])[k1ts  ];
-   //   f1_ZERO = (D.f[dirZERO])[k1zero];
+   //   f1_ZERO = (D.f[dirREST])[k1zero];
    //   f1_TNE  = (D.f[dirTNE ])[k1tne ];
    //   f1_TSW  = (D.f[dirTSW ])[k1tsw ];
    //   f1_TSE  = (D.f[dirTSE ])[k1tse ];
@@ -3931,7 +3931,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			//double mfbcc = (D.f[dirBS  ])[k1bs  ];
 			//double mfbac = (D.f[dirBN  ])[k1bn  ];
 			//double mfbca = (D.f[dirTS  ])[k1ts  ];
-			//double mfbbb = (D.f[dirZERO])[k1zero];
+			//double mfbbb = (D.f[dirREST])[k1zero];
 			//double mfaaa = (D.f[dirTNE ])[k1tne ];
 			//double mfcca = (D.f[dirTSW ])[k1tsw ];
 			//double mfaca = (D.f[dirTSE ])[k1tse ];
@@ -3958,7 +3958,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			real mfbcc = (D.f[dirBS  ])[k1bs  ];
 			real mfbac = (D.f[dirBN  ])[k1bn  ];
 			real mfbca = (D.f[dirTS  ])[k1ts  ];
-			real mfbbb = (D.f[dirZERO])[k1zero];
+			real mfbbb = (D.f[dirREST])[k1zero];
 			real mfaaa = (D.f[dirTNE ])[k1tne ];
 			real mfcca = (D.f[dirTSW ])[k1tsw ];
 			real mfaca = (D.f[dirTSE ])[k1tse ];
@@ -3986,7 +3986,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			//real mfbaa = (D.f[dirBS  ])[kbs  ];
 			//real mfbca = (D.f[dirBN  ])[kbn  ];
 			//real mfbac = (D.f[dirTS  ])[kts  ];
-			//real mfbbb = (D.f[dirZERO])[kzero];
+			//real mfbbb = (D.f[dirREST])[kzero];
 			//real mfccc = (D.f[dirTNE ])[ktne ];
 			//real mfaac = (D.f[dirTSW ])[ktsw ];
 			//real mfcac = (D.f[dirTSE ])[ktse ];
@@ -4039,7 +4039,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			//	(kDistTest.f[dirBS  ])[k] = mfbcc;
 			//	(kDistTest.f[dirBN  ])[k] = mfbac;
 			//	(kDistTest.f[dirTS  ])[k] = mfbca;
-			//	(kDistTest.f[dirZERO])[k] = KQK;
+			//	(kDistTest.f[dirREST])[k] = KQK;
 			//	(kDistTest.f[dirTNE ])[k] = mfaaa;
 			//	(kDistTest.f[dirTSW ])[k] = mfcca;
 			//	(kDistTest.f[dirTSE ])[k] = mfaca;
@@ -4067,7 +4067,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			//	(kDistTest.f[dirBS  ])[k] = zero;
 			//	(kDistTest.f[dirBN  ])[k] = zero;
 			//	(kDistTest.f[dirTS  ])[k] = zero;
-			//	(kDistTest.f[dirZERO])[k] = zero;
+			//	(kDistTest.f[dirREST])[k] = zero;
 			//	(kDistTest.f[dirTNE ])[k] = zero;
 			//	(kDistTest.f[dirTSW ])[k] = zero;
 			//	(kDistTest.f[dirTSE ])[k] = zero;
@@ -4185,7 +4185,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
       //   D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       //   D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       //   D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      //   D.f[dirREST] = &DD[dirREST*size_Mat];
       //   D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       //   D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       //   D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4215,7 +4215,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
       //   D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       //   D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       //   D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      //   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      //   D.f[dirREST] = &DD[dirREST*size_Mat];
       //   D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       //   D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       //   D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4246,7 +4246,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			(D.f[dirBS  ])[kbs  ] = mfbcc;//mfbaa;
 			(D.f[dirBN  ])[kbn  ] = mfbac;//mfbca;
 			(D.f[dirTS  ])[kts  ] = mfbca;//mfbac;
-			(D.f[dirZERO])[kzero] = mfbbb;//mfbbb;
+			(D.f[dirREST])[kzero] = mfbbb;//mfbbb;
 			(D.f[dirTNE ])[ktne ] = mfaaa;//mfccc;
 			(D.f[dirTSW ])[ktsw ] = mfcca;//mfaac;
 			(D.f[dirTSE ])[ktse ] = mfaca;//mfcac;
@@ -4273,7 +4273,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
 			//(D.f[dirBS  ])[kbs  ] = mfbaa;
 			//(D.f[dirBN  ])[kbn  ] = mfbca;
 			//(D.f[dirTS  ])[kts  ] = mfbac;
-			//(D.f[dirZERO])[kzero] = mfbbb;
+			//(D.f[dirREST])[kzero] = mfbbb;
 			//(D.f[dirTNE ])[ktne ] = mfccc;
 			//(D.f[dirTSW ])[ktsw ] = mfaac;
 			//(D.f[dirTSE ])[ktse ] = mfcac;
@@ -4301,7 +4301,7 @@ extern "C" __global__ void QPressDeviceEQZ27(real* rhoBC,
       //(D.f[dirBS  ])[kbs  ] = fBS;  //f1_BS;   //fTN;   //fBS;  
       //(D.f[dirBN  ])[kbn  ] = fBN;  //f1_BN;   //fTS;   //fBN;  
       //(D.f[dirTS  ])[kts  ] = fTS;  //f1_TS;   //fBN;   //fTS;  
-      //(D.f[dirZERO])[kzero] = fZERO;//f1_ZERO; //fZERO; //fZERO;
+      //(D.f[dirREST])[kzero] = fZERO;//f1_ZERO; //fZERO; //fZERO;
       //(D.f[dirTNE ])[ktne ] = fTNE; //f1_TNE;  //fBSW;  //fTNE; 
       //(D.f[dirBSW ])[kbsw ] = fBSW; //f1_BSW;  //fTNE;  //fBSW; 
       //(D.f[dirBNE ])[kbne ] = fBNE; //f1_BNE;  //fTSW;  //fBNE; 
@@ -4427,7 +4427,7 @@ extern "C" __global__ void QPressDeviceZero27(	 real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4457,7 +4457,7 @@ extern "C" __global__ void QPressDeviceZero27(	 real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4488,7 +4488,7 @@ extern "C" __global__ void QPressDeviceZero27(	 real* DD,
       (D.f[dirBS  ])[kbs  ] =c0o1;
       (D.f[dirBN  ])[kbn  ] =c0o1;
       (D.f[dirTS  ])[kts  ] =c0o1;
-      (D.f[dirZERO])[kzero] =c0o1;
+      (D.f[dirREST])[kzero] =c0o1;
       (D.f[dirTNE ])[ktne ] =c0o1;
       (D.f[dirTSW ])[ktsw ] =c0o1;
       (D.f[dirTSE ])[ktse ] =c0o1;
@@ -4647,7 +4647,7 @@ extern "C" __global__ void QPressDeviceFake27(	 real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4677,7 +4677,7 @@ extern "C" __global__ void QPressDeviceFake27(	 real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4709,7 +4709,7 @@ extern "C" __global__ void QPressDeviceFake27(	 real* rhoBC,
       f1_TN   = (D.f[dirBS  ])[k1bs  ];
       f1_TS   = (D.f[dirBN  ])[k1bn  ];
       f1_BN   = (D.f[dirTS  ])[k1ts  ];
-      f1_ZERO = (D.f[dirZERO])[k1zero];
+      f1_ZERO = (D.f[dirREST])[k1zero];
       f1_BSW  = (D.f[dirTNE ])[k1tne ];
       f1_BNE  = (D.f[dirTSW ])[k1tsw ];
       f1_BNW  = (D.f[dirTSE ])[k1tse ];
@@ -4762,7 +4762,7 @@ extern "C" __global__ void QPressDeviceFake27(	 real* rhoBC,
       (D.f[dirBS  ])[kbs  ] = f1_TN  -c1o54*drho1;	//  c1o100;  // zero;  //
       (D.f[dirBN  ])[kbn  ] = f1_TS  -c1o54*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTS  ])[kts  ] = f1_BN  -c1o54*drho1;	//  c1o100;  // zero;  //
-      (D.f[dirZERO])[kzero] = f1_ZERO-c8o27*drho1;	//  c1o100;  // zero;  //
+      (D.f[dirREST])[kzero] = f1_ZERO-c8o27*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTNE ])[ktne ] = f1_BSW -c1o216*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTSW ])[ktsw ] = f1_BNE -c1o216*drho1;	//  c1o100;  // zero;  //
       (D.f[dirTSE ])[ktse ] = f1_BNW -c1o216*drho1;	//  c1o100;  // zero;  //
@@ -4847,7 +4847,7 @@ extern "C" __global__ void QPressDevice27_IntBB(real* rho,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4877,7 +4877,7 @@ extern "C" __global__ void QPressDevice27_IntBB(real* rho,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -5000,7 +5000,7 @@ extern "C" __global__ void QPressDevice27_IntBB(real* rho,
 		real vx1, vx2, vx3, drho, feq, q;
 		drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 			f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-			f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+			f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
 		vx1    = (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
 			((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -5038,7 +5038,7 @@ extern "C" __global__ void QPressDevice27_IntBB(real* rho,
 			D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 			D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 			D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 			D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 			D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -5068,7 +5068,7 @@ extern "C" __global__ void QPressDevice27_IntBB(real* rho,
 			D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 			D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 			D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 			D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 			D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -5080,7 +5080,7 @@ extern "C" __global__ void QPressDevice27_IntBB(real* rho,
 		}
 		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 		//Test
-		//(D.f[dirZERO])[k]=c1o10;
+		//(D.f[dirREST])[k]=c1o10;
 		real rhoDiff = drho - rho[k];
 		real VeloX = vx1;
 		real VeloY = vx2;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/ScaleCF27.cu b/src/gpu/VirtualFluids_GPU/GPU/ScaleCF27.cu
index 0ca4db3ca..6171e2c90 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/ScaleCF27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/ScaleCF27.cu
@@ -60,7 +60,7 @@ extern "C" __global__ void scaleCF_0817_comp_27( real* DC,
 	f0MMdest = &DF[dirBS  *size_MatF];
 	f0PMdest = &DF[dirBN  *size_MatF];
 	f0MPdest = &DF[dirTS  *size_MatF];
-	f000dest = &DF[dirZERO*size_MatF];
+	f000dest = &DF[dirREST*size_MatF];
 	fMMMdest = &DF[dirBSW *size_MatF];
 	fMMPdest = &DF[dirTSW *size_MatF];
 	fMPPdest = &DF[dirTNW *size_MatF];
@@ -95,7 +95,7 @@ extern "C" __global__ void scaleCF_0817_comp_27( real* DC,
 		f0MMsource = &DC[dirBS  *size_MatC];
 		f0PMsource = &DC[dirBN  *size_MatC];
 		f0MPsource = &DC[dirTS  *size_MatC];
-		f000source = &DC[dirZERO*size_MatC];
+		f000source = &DC[dirREST*size_MatC];
 		fMMMsource = &DC[dirBSW *size_MatC];
 		fMMPsource = &DC[dirTSW *size_MatC];
 		fMPPsource = &DC[dirTNW *size_MatC];
@@ -125,7 +125,7 @@ extern "C" __global__ void scaleCF_0817_comp_27( real* DC,
 		f0MMsource = &DC[dirTN  *size_MatC];
 		f0PMsource = &DC[dirTS  *size_MatC];
 		f0MPsource = &DC[dirBN  *size_MatC];
-		f000source = &DC[dirZERO*size_MatC];
+		f000source = &DC[dirREST*size_MatC];
 		fMMMsource = &DC[dirTNE *size_MatC];
 		fMMPsource = &DC[dirBNE *size_MatC];
 		fMPPsource = &DC[dirBSE *size_MatC];
@@ -4126,7 +4126,7 @@ extern "C" __global__ void scaleCF_AA2016_comp_27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -4159,7 +4159,7 @@ extern "C" __global__ void scaleCF_AA2016_comp_27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -4189,7 +4189,7 @@ extern "C" __global__ void scaleCF_AA2016_comp_27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -11009,7 +11009,7 @@ extern "C" __global__ void scaleCF_RhoSq_3rdMom_comp_27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -11042,7 +11042,7 @@ extern "C" __global__ void scaleCF_RhoSq_3rdMom_comp_27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -11072,7 +11072,7 @@ extern "C" __global__ void scaleCF_RhoSq_3rdMom_comp_27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -17884,7 +17884,7 @@ extern "C" __global__ void scaleCF_RhoSq_comp_27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -17917,7 +17917,7 @@ extern "C" __global__ void scaleCF_RhoSq_comp_27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -17947,7 +17947,7 @@ extern "C" __global__ void scaleCF_RhoSq_comp_27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -22132,7 +22132,7 @@ extern "C" __global__ void scaleCF_staggered_time_comp_27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -22165,7 +22165,7 @@ extern "C" __global__ void scaleCF_staggered_time_comp_27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -22195,7 +22195,7 @@ extern "C" __global__ void scaleCF_staggered_time_comp_27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -26368,7 +26368,7 @@ extern "C" __global__ void scaleCF_Fix_comp_27(  real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -26401,7 +26401,7 @@ extern "C" __global__ void scaleCF_Fix_comp_27(  real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -26431,7 +26431,7 @@ extern "C" __global__ void scaleCF_Fix_comp_27(  real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -31135,7 +31135,7 @@ extern "C" __global__ void scaleCF_NSPress_27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -31168,7 +31168,7 @@ extern "C" __global__ void scaleCF_NSPress_27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -31198,7 +31198,7 @@ extern "C" __global__ void scaleCF_NSPress_27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -35079,7 +35079,7 @@ extern "C" __global__ void scaleCF_Fix_27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -35112,7 +35112,7 @@ extern "C" __global__ void scaleCF_Fix_27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -35142,7 +35142,7 @@ extern "C" __global__ void scaleCF_Fix_27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -39337,7 +39337,7 @@ extern "C" __global__ void scaleCFpress27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -39370,7 +39370,7 @@ extern "C" __global__ void scaleCFpress27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -39400,7 +39400,7 @@ extern "C" __global__ void scaleCFpress27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -41011,7 +41011,7 @@ extern "C" __global__ void scaleCFLast27( real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -41044,7 +41044,7 @@ extern "C" __global__ void scaleCFLast27( real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -41074,7 +41074,7 @@ extern "C" __global__ void scaleCFLast27( real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -43242,7 +43242,7 @@ extern "C" __global__ void scaleCFThSMG7(    real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   //fzeroF = &DF[dirZERO*size_MatF];
+   //fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -43275,7 +43275,7 @@ extern "C" __global__ void scaleCFThSMG7(    real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -43305,7 +43305,7 @@ extern "C" __global__ void scaleCFThSMG7(    real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -44468,7 +44468,7 @@ extern "C" __global__ void scaleCFThS7(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   //fzeroF = &DF[dirZERO*size_MatF];
+   //fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -44501,7 +44501,7 @@ extern "C" __global__ void scaleCFThS7(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -44531,7 +44531,7 @@ extern "C" __global__ void scaleCFThS7(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -45592,7 +45592,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   //fzeroF = &DF[dirZERO*size_MatF];
+   //fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -45625,7 +45625,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -45655,7 +45655,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -45686,7 +45686,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
    D27F.f[dirBS  ] = &DD27F[dirBS  *size_MatF];
    D27F.f[dirBN  ] = &DD27F[dirBN  *size_MatF];
    D27F.f[dirTS  ] = &DD27F[dirTS  *size_MatF];
-   D27F.f[dirZERO] = &DD27F[dirZERO*size_MatF];
+   D27F.f[dirREST] = &DD27F[dirREST*size_MatF];
    D27F.f[dirTNE ] = &DD27F[dirTNE *size_MatF];
    D27F.f[dirTSW ] = &DD27F[dirTSW *size_MatF];
    D27F.f[dirTSE ] = &DD27F[dirTSE *size_MatF];
@@ -45717,7 +45717,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       D27C.f[dirBS  ] = &DD27C[dirBS  *size_MatC];
       D27C.f[dirBN  ] = &DD27C[dirBN  *size_MatC];
       D27C.f[dirTS  ] = &DD27C[dirTS  *size_MatC];
-      D27C.f[dirZERO] = &DD27C[dirZERO*size_MatC];
+      D27C.f[dirREST] = &DD27C[dirREST*size_MatC];
       D27C.f[dirTNE ] = &DD27C[dirTNE *size_MatC];
       D27C.f[dirTSW ] = &DD27C[dirTSW *size_MatC];
       D27C.f[dirTSE ] = &DD27C[dirTSE *size_MatC];
@@ -45747,7 +45747,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       D27C.f[dirTN  ] = &DD27C[dirBS  *size_MatC];
       D27C.f[dirTS  ] = &DD27C[dirBN  *size_MatC];
       D27C.f[dirBN  ] = &DD27C[dirTS  *size_MatC];
-      D27C.f[dirZERO] = &DD27C[dirZERO*size_MatC];
+      D27C.f[dirREST] = &DD27C[dirREST*size_MatC];
       D27C.f[dirBSW ] = &DD27C[dirTNE *size_MatC];
       D27C.f[dirBNE ] = &DD27C[dirTSW *size_MatC];
       D27C.f[dirBNW ] = &DD27C[dirTSE *size_MatC];
@@ -45873,7 +45873,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -45960,7 +45960,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46047,7 +46047,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46134,7 +46134,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46231,7 +46231,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46318,7 +46318,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46405,7 +46405,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46492,7 +46492,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
       f27BS   =  (D27C.f[dirBS  ])[kbs  ];
       f27BN   =  (D27C.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27C.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27C.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27C.f[dirREST])[kzero];//kzero
       f27TNE   = (D27C.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27C.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27C.f[dirTSE ])[ks   ];//ktse
@@ -46618,7 +46618,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -46696,7 +46696,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -46774,7 +46774,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -46852,7 +46852,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -46940,7 +46940,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -47018,7 +47018,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -47096,7 +47096,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -47174,7 +47174,7 @@ extern "C" __global__ void scaleCFThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27F.f[dirZERO])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
+      (D27F.f[dirREST])[kzero] =   c8o27* Conc_F*(c1o1-cu_sq);
       (D27F.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_F*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27F.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_F*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27F.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_F*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -47286,7 +47286,7 @@ extern "C" __global__ void scaleCFEff27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -47319,7 +47319,7 @@ extern "C" __global__ void scaleCFEff27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -47349,7 +47349,7 @@ extern "C" __global__ void scaleCFEff27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -48995,7 +48995,7 @@ extern "C" __global__ void scaleCF27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -49028,7 +49028,7 @@ extern "C" __global__ void scaleCF27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -49058,7 +49058,7 @@ extern "C" __global__ void scaleCF27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/ScaleCF_F3_27.cu b/src/gpu/VirtualFluids_GPU/GPU/ScaleCF_F3_27.cu
index 3ebc14210..f6b824aab 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/ScaleCF_F3_27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/ScaleCF_F3_27.cu
@@ -61,7 +61,7 @@ extern "C" __global__ void scaleCF_comp_D3Q27F3_2018(real* DC,
 	f0MMdest = &DF[dirBS  *size_MatF];
 	f0PMdest = &DF[dirBN  *size_MatF];
 	f0MPdest = &DF[dirTS  *size_MatF];
-	f000dest = &DF[dirZERO*size_MatF];
+	f000dest = &DF[dirREST*size_MatF];
 	fMMMdest = &DF[dirBSW *size_MatF];
 	fMMPdest = &DF[dirTSW *size_MatF];
 	fMPPdest = &DF[dirTNW *size_MatF];
@@ -96,7 +96,7 @@ extern "C" __global__ void scaleCF_comp_D3Q27F3_2018(real* DC,
 		f0MMsource = &DC[dirBS  *size_MatC];
 		f0PMsource = &DC[dirBN  *size_MatC];
 		f0MPsource = &DC[dirTS  *size_MatC];
-		f000source = &DC[dirZERO*size_MatC];
+		f000source = &DC[dirREST*size_MatC];
 		fMMMsource = &DC[dirBSW *size_MatC];
 		fMMPsource = &DC[dirTSW *size_MatC];
 		fMPPsource = &DC[dirTNW *size_MatC];
@@ -126,7 +126,7 @@ extern "C" __global__ void scaleCF_comp_D3Q27F3_2018(real* DC,
 		f0MMsource = &DC[dirTN  *size_MatC];
 		f0PMsource = &DC[dirTS  *size_MatC];
 		f0MPsource = &DC[dirBN  *size_MatC];
-		f000source = &DC[dirZERO*size_MatC];
+		f000source = &DC[dirREST*size_MatC];
 		fMMMsource = &DC[dirTNE *size_MatC];
 		fMMPsource = &DC[dirBNE *size_MatC];
 		fMPPsource = &DC[dirBSE *size_MatC];
@@ -4408,7 +4408,7 @@ extern "C" __global__ void scaleCF_comp_D3Q27F3( real* DC,
 	f0MMdest = &DF[dirBS  *size_MatF];
 	f0PMdest = &DF[dirBN  *size_MatF];
 	f0MPdest = &DF[dirTS  *size_MatF];
-	f000dest = &DF[dirZERO*size_MatF];
+	f000dest = &DF[dirREST*size_MatF];
 	fMMMdest = &DF[dirBSW *size_MatF];
 	fMMPdest = &DF[dirTSW *size_MatF];
 	fMPPdest = &DF[dirTNW *size_MatF];
@@ -4443,7 +4443,7 @@ extern "C" __global__ void scaleCF_comp_D3Q27F3( real* DC,
 		f0MMsource = &DC[dirBS  *size_MatC];
 		f0PMsource = &DC[dirBN  *size_MatC];
 		f0MPsource = &DC[dirTS  *size_MatC];
-		f000source = &DC[dirZERO*size_MatC];
+		f000source = &DC[dirREST*size_MatC];
 		fMMMsource = &DC[dirBSW *size_MatC];
 		fMMPsource = &DC[dirTSW *size_MatC];
 		fMPPsource = &DC[dirTNW *size_MatC];
@@ -4473,7 +4473,7 @@ extern "C" __global__ void scaleCF_comp_D3Q27F3( real* DC,
 		f0MMsource = &DC[dirTN  *size_MatC];
 		f0PMsource = &DC[dirTS  *size_MatC];
 		f0MPsource = &DC[dirBN  *size_MatC];
-		f000source = &DC[dirZERO*size_MatC];
+		f000source = &DC[dirREST*size_MatC];
 		fMMMsource = &DC[dirTNE *size_MatC];
 		fMMPsource = &DC[dirBNE *size_MatC];
 		fMPPsource = &DC[dirBSE *size_MatC];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/ScaleFC27.cu b/src/gpu/VirtualFluids_GPU/GPU/ScaleFC27.cu
index ef4ff8dc8..a0a3f2b0e 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/ScaleFC27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/ScaleFC27.cu
@@ -60,7 +60,7 @@ extern "C" __global__ void scaleFC_0817_comp_27( real* DC,
    f0MMsource = &DF[dirBS  *size_MatF];
    f0PMsource = &DF[dirBN  *size_MatF];
    f0MPsource = &DF[dirTS  *size_MatF];
-   f000source = &DF[dirZERO*size_MatF];
+   f000source = &DF[dirREST*size_MatF];
    fMMMsource = &DF[dirBSW *size_MatF];
    fMMPsource = &DF[dirTSW *size_MatF];
    fMPPsource = &DF[dirTNW *size_MatF];
@@ -95,7 +95,7 @@ extern "C" __global__ void scaleFC_0817_comp_27( real* DC,
 	   f0MMdest = &DC[dirBS  *size_MatC];
 	   f0PMdest = &DC[dirBN  *size_MatC];
 	   f0MPdest = &DC[dirTS  *size_MatC];
-	   f000dest = &DC[dirZERO*size_MatC];
+	   f000dest = &DC[dirREST*size_MatC];
 	   fMMMdest = &DC[dirBSW *size_MatC];
 	   fMMPdest = &DC[dirTSW *size_MatC];
 	   fMPPdest = &DC[dirTNW *size_MatC];
@@ -125,7 +125,7 @@ extern "C" __global__ void scaleFC_0817_comp_27( real* DC,
 	   f0MMdest = &DC[dirTN  *size_MatC];
 	   f0PMdest = &DC[dirTS  *size_MatC];
 	   f0MPdest = &DC[dirBN  *size_MatC];
-	   f000dest = &DC[dirZERO*size_MatC];
+	   f000dest = &DC[dirREST*size_MatC];
 	   fMMMdest = &DC[dirTNE *size_MatC];
 	   fMMPdest = &DC[dirBNE *size_MatC];
 	   fMPPdest = &DC[dirBSE *size_MatC];
@@ -1253,7 +1253,7 @@ extern "C" __global__ void scaleFC_AA2016_comp_27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -1286,7 +1286,7 @@ extern "C" __global__ void scaleFC_AA2016_comp_27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -1316,7 +1316,7 @@ extern "C" __global__ void scaleFC_AA2016_comp_27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -5442,7 +5442,7 @@ extern "C" __global__ void scaleFC_RhoSq_3rdMom_comp_27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -5475,7 +5475,7 @@ extern "C" __global__ void scaleFC_RhoSq_3rdMom_comp_27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -5505,7 +5505,7 @@ extern "C" __global__ void scaleFC_RhoSq_3rdMom_comp_27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -9614,7 +9614,7 @@ __device__ void scaleFC_RhoSq_comp_27_Calculation(real *DC, real *DF, unsigned i
     fbsF   = &DF[dirBS * size_MatF];
     fbnF   = &DF[dirBN * size_MatF];
     ftsF   = &DF[dirTS * size_MatF];
-    fzeroF = &DF[dirZERO * size_MatF];
+    fzeroF = &DF[dirREST * size_MatF];
     ftneF  = &DF[dirTNE * size_MatF];
     ftswF  = &DF[dirTSW * size_MatF];
     ftseF  = &DF[dirTSE * size_MatF];
@@ -9646,7 +9646,7 @@ __device__ void scaleFC_RhoSq_comp_27_Calculation(real *DC, real *DF, unsigned i
         fbsC   = &DC[dirBS * size_MatC];
         fbnC   = &DC[dirBN * size_MatC];
         ftsC   = &DC[dirTS * size_MatC];
-        fzeroC = &DC[dirZERO * size_MatC];
+        fzeroC = &DC[dirREST * size_MatC];
         ftneC  = &DC[dirTNE * size_MatC];
         ftswC  = &DC[dirTSW * size_MatC];
         ftseC  = &DC[dirTSE * size_MatC];
@@ -9674,7 +9674,7 @@ __device__ void scaleFC_RhoSq_comp_27_Calculation(real *DC, real *DF, unsigned i
         ftnC   = &DC[dirBS * size_MatC];
         ftsC   = &DC[dirBN * size_MatC];
         fbnC   = &DC[dirTS * size_MatC];
-        fzeroC = &DC[dirZERO * size_MatC];
+        fzeroC = &DC[dirREST * size_MatC];
         fbswC  = &DC[dirTNE * size_MatC];
         fbneC  = &DC[dirTSW * size_MatC];
         fbnwC  = &DC[dirTSE * size_MatC];
@@ -11192,7 +11192,7 @@ extern "C" __global__ void scaleFC_staggered_time_comp_27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -11225,7 +11225,7 @@ extern "C" __global__ void scaleFC_staggered_time_comp_27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -11255,7 +11255,7 @@ extern "C" __global__ void scaleFC_staggered_time_comp_27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -11776,7 +11776,7 @@ extern "C" __global__ void scaleFC_staggered_time_comp_27(   real* DC,
 		 // fbsC   = &DC[dirBS  *size_MatC];
 		 // fbnC   = &DC[dirBN  *size_MatC];
 		 // ftsC   = &DC[dirTS  *size_MatC];
-		 // fzeroC = &DC[dirZERO*size_MatC];
+		 // fzeroC = &DC[dirREST*size_MatC];
 		 // ftneC  = &DC[dirTNE *size_MatC];
 		 // ftswC  = &DC[dirTSW *size_MatC];
 		 // ftseC  = &DC[dirTSE *size_MatC];
@@ -11806,7 +11806,7 @@ extern "C" __global__ void scaleFC_staggered_time_comp_27(   real* DC,
 		 // ftnC   = &DC[dirBS  *size_MatC];
 		 // ftsC   = &DC[dirBN  *size_MatC];
 		 // fbnC   = &DC[dirTS  *size_MatC];
-		 // fzeroC = &DC[dirZERO*size_MatC];
+		 // fzeroC = &DC[dirREST*size_MatC];
 		 // fbswC  = &DC[dirTNE *size_MatC];
 		 // fbneC  = &DC[dirTSW *size_MatC];
 		 // fbnwC  = &DC[dirTSE *size_MatC];
@@ -13313,7 +13313,7 @@ extern "C" __global__ void scaleFC_Fix_comp_27(  real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -13346,7 +13346,7 @@ extern "C" __global__ void scaleFC_Fix_comp_27(  real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -13376,7 +13376,7 @@ extern "C" __global__ void scaleFC_Fix_comp_27(  real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -15173,7 +15173,7 @@ extern "C" __global__ void scaleFC_NSPress_27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -15206,7 +15206,7 @@ extern "C" __global__ void scaleFC_NSPress_27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -15236,7 +15236,7 @@ extern "C" __global__ void scaleFC_NSPress_27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -16379,7 +16379,7 @@ extern "C" __global__ void scaleFC_Fix_27(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -16412,7 +16412,7 @@ extern "C" __global__ void scaleFC_Fix_27(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -16442,7 +16442,7 @@ extern "C" __global__ void scaleFC_Fix_27(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -17739,7 +17739,7 @@ extern "C" __global__ void scaleFCpress27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -17772,7 +17772,7 @@ extern "C" __global__ void scaleFCpress27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -17802,7 +17802,7 @@ extern "C" __global__ void scaleFCpress27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -18664,7 +18664,7 @@ extern "C" __global__ void scaleFCLast27( real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -18697,7 +18697,7 @@ extern "C" __global__ void scaleFCLast27( real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -18727,7 +18727,7 @@ extern "C" __global__ void scaleFCLast27( real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -20057,7 +20057,7 @@ extern "C" __global__ void scaleFCThSMG7(    real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   //fzeroF = &DF[dirZERO*size_MatF];
+   //fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -20090,7 +20090,7 @@ extern "C" __global__ void scaleFCThSMG7(    real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -20120,7 +20120,7 @@ extern "C" __global__ void scaleFCThSMG7(    real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -20929,7 +20929,7 @@ extern "C" __global__ void scaleFCThS7(   real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   //fzeroF = &DF[dirZERO*size_MatF];
+   //fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -20962,7 +20962,7 @@ extern "C" __global__ void scaleFCThS7(   real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -20992,7 +20992,7 @@ extern "C" __global__ void scaleFCThS7(   real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -21721,7 +21721,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   //fzeroF = &DF[dirZERO*size_MatF];
+   //fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -21754,7 +21754,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -21784,7 +21784,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      //fzeroC = &DC[dirZERO*size_MatC];
+      //fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -21814,7 +21814,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
    D27F.f[dirBS  ] = &DD27F[dirBS  *size_MatF];
    D27F.f[dirBN  ] = &DD27F[dirBN  *size_MatF];
    D27F.f[dirTS  ] = &DD27F[dirTS  *size_MatF];
-   D27F.f[dirZERO] = &DD27F[dirZERO*size_MatF];
+   D27F.f[dirREST] = &DD27F[dirREST*size_MatF];
    D27F.f[dirTNE ] = &DD27F[dirTNE *size_MatF];
    D27F.f[dirTSW ] = &DD27F[dirTSW *size_MatF];
    D27F.f[dirTSE ] = &DD27F[dirTSE *size_MatF];
@@ -21845,7 +21845,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       D27C.f[dirBS  ] = &DD27C[dirBS  *size_MatC];
       D27C.f[dirBN  ] = &DD27C[dirBN  *size_MatC];
       D27C.f[dirTS  ] = &DD27C[dirTS  *size_MatC];
-      D27C.f[dirZERO] = &DD27C[dirZERO*size_MatC];
+      D27C.f[dirREST] = &DD27C[dirREST*size_MatC];
       D27C.f[dirTNE ] = &DD27C[dirTNE *size_MatC];
       D27C.f[dirTSW ] = &DD27C[dirTSW *size_MatC];
       D27C.f[dirTSE ] = &DD27C[dirTSE *size_MatC];
@@ -21875,7 +21875,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       D27C.f[dirTN  ] = &DD27C[dirBS  *size_MatC];
       D27C.f[dirTS  ] = &DD27C[dirBN  *size_MatC];
       D27C.f[dirBN  ] = &DD27C[dirTS  *size_MatC];
-      D27C.f[dirZERO] = &DD27C[dirZERO*size_MatC];
+      D27C.f[dirREST] = &DD27C[dirREST*size_MatC];
       D27C.f[dirBSW ] = &DD27C[dirTNE *size_MatC];
       D27C.f[dirBNE ] = &DD27C[dirTSW *size_MatC];
       D27C.f[dirBNW ] = &DD27C[dirTSE *size_MatC];
@@ -21997,7 +21997,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22084,7 +22084,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22171,7 +22171,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22258,7 +22258,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22355,7 +22355,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22442,7 +22442,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22529,7 +22529,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22616,7 +22616,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
       f27BS   =  (D27F.f[dirBS  ])[kbs  ];
       f27BN   =  (D27F.f[dirBN  ])[kb   ];//kbn
       f27TS   =  (D27F.f[dirTS  ])[ks   ];//kts
-      f27ZERO =  (D27F.f[dirZERO])[kzero];//kzero
+      f27ZERO =  (D27F.f[dirREST])[kzero];//kzero
       f27TNE   = (D27F.f[dirTNE ])[kzero];//ktne
       f27TSW   = (D27F.f[dirTSW ])[ksw  ];//ktsw
       f27TSE   = (D27F.f[dirTSE ])[ks   ];//ktse
@@ -22737,7 +22737,7 @@ extern "C" __global__ void scaleFCThS27(     real* DC,
 
       cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D27C.f[dirZERO])[kzero] =   c8o27* Conc_C*(c1o1-cu_sq);
+      (D27C.f[dirREST])[kzero] =   c8o27* Conc_C*(c1o1-cu_sq);
       (D27C.f[dirE   ])[kzero] =   c2o27* (c3o1*( Mx        )+Conc_C*(c1o1+c9o2*( vx1        )*( vx1        )-cu_sq));
       (D27C.f[dirW   ])[kw   ] =   c2o27* (c3o1*(-Mx        )+Conc_C*(c1o1+c9o2*(-vx1        )*(-vx1        )-cu_sq));
       (D27C.f[dirN   ])[kzero] =   c2o27* (c3o1*(     My    )+Conc_C*(c1o1+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -22847,7 +22847,7 @@ extern "C" __global__ void scaleFCEff27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -22880,7 +22880,7 @@ extern "C" __global__ void scaleFCEff27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -22910,7 +22910,7 @@ extern "C" __global__ void scaleFCEff27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
@@ -23825,7 +23825,7 @@ extern "C" __global__ void scaleFC27(real* DC,
    fbsF   = &DF[dirBS  *size_MatF];
    fbnF   = &DF[dirBN  *size_MatF];
    ftsF   = &DF[dirTS  *size_MatF];
-   fzeroF = &DF[dirZERO*size_MatF];
+   fzeroF = &DF[dirREST*size_MatF];
    ftneF  = &DF[dirTNE *size_MatF];
    ftswF  = &DF[dirTSW *size_MatF];
    ftseF  = &DF[dirTSE *size_MatF];
@@ -23858,7 +23858,7 @@ extern "C" __global__ void scaleFC27(real* DC,
       fbsC   = &DC[dirBS  *size_MatC];
       fbnC   = &DC[dirBN  *size_MatC];
       ftsC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       ftneC  = &DC[dirTNE *size_MatC];
       ftswC  = &DC[dirTSW *size_MatC];
       ftseC  = &DC[dirTSE *size_MatC];
@@ -23888,7 +23888,7 @@ extern "C" __global__ void scaleFC27(real* DC,
       ftnC   = &DC[dirBS  *size_MatC];
       ftsC   = &DC[dirBN  *size_MatC];
       fbnC   = &DC[dirTS  *size_MatC];
-      fzeroC = &DC[dirZERO*size_MatC];
+      fzeroC = &DC[dirREST*size_MatC];
       fbswC  = &DC[dirTNE *size_MatC];
       fbneC  = &DC[dirTSW *size_MatC];
       fbnwC  = &DC[dirTSE *size_MatC];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/ScaleFC_F3_27.cu b/src/gpu/VirtualFluids_GPU/GPU/ScaleFC_F3_27.cu
index 12ed63399..6e2c7e9b5 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/ScaleFC_F3_27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/ScaleFC_F3_27.cu
@@ -61,7 +61,7 @@ extern "C" __global__ void scaleFC_comp_D3Q27F3_2018(real* DC,
    f0MMsource = &DF[dirBS  *size_MatF];
    f0PMsource = &DF[dirBN  *size_MatF];
    f0MPsource = &DF[dirTS  *size_MatF];
-   f000source = &DF[dirZERO*size_MatF];
+   f000source = &DF[dirREST*size_MatF];
    fMMMsource = &DF[dirBSW *size_MatF];
    fMMPsource = &DF[dirTSW *size_MatF];
    fMPPsource = &DF[dirTNW *size_MatF];
@@ -96,7 +96,7 @@ extern "C" __global__ void scaleFC_comp_D3Q27F3_2018(real* DC,
 	   f0MMdest = &DC[dirBS  *size_MatC];
 	   f0PMdest = &DC[dirBN  *size_MatC];
 	   f0MPdest = &DC[dirTS  *size_MatC];
-	   f000dest = &DC[dirZERO*size_MatC];
+	   f000dest = &DC[dirREST*size_MatC];
 	   fMMMdest = &DC[dirBSW *size_MatC];
 	   fMMPdest = &DC[dirTSW *size_MatC];
 	   fMPPdest = &DC[dirTNW *size_MatC];
@@ -126,7 +126,7 @@ extern "C" __global__ void scaleFC_comp_D3Q27F3_2018(real* DC,
 	   f0MMdest = &DC[dirTN  *size_MatC];
 	   f0PMdest = &DC[dirTS  *size_MatC];
 	   f0MPdest = &DC[dirBN  *size_MatC];
-	   f000dest = &DC[dirZERO*size_MatC];
+	   f000dest = &DC[dirREST*size_MatC];
 	   fMMMdest = &DC[dirTNE *size_MatC];
 	   fMMPdest = &DC[dirBNE *size_MatC];
 	   fMPPdest = &DC[dirBSE *size_MatC];
@@ -1308,7 +1308,7 @@ extern "C" __global__ void scaleFC_comp_D3Q27F3( real* DC,
    f0MMsource = &DF[dirBS  *size_MatF];
    f0PMsource = &DF[dirBN  *size_MatF];
    f0MPsource = &DF[dirTS  *size_MatF];
-   f000source = &DF[dirZERO*size_MatF];
+   f000source = &DF[dirREST*size_MatF];
    fMMMsource = &DF[dirBSW *size_MatF];
    fMMPsource = &DF[dirTSW *size_MatF];
    fMPPsource = &DF[dirTNW *size_MatF];
@@ -1343,7 +1343,7 @@ extern "C" __global__ void scaleFC_comp_D3Q27F3( real* DC,
 	   f0MMdest = &DC[dirBS  *size_MatC];
 	   f0PMdest = &DC[dirBN  *size_MatC];
 	   f0MPdest = &DC[dirTS  *size_MatC];
-	   f000dest = &DC[dirZERO*size_MatC];
+	   f000dest = &DC[dirREST*size_MatC];
 	   fMMMdest = &DC[dirBSW *size_MatC];
 	   fMMPdest = &DC[dirTSW *size_MatC];
 	   fMPPdest = &DC[dirTNW *size_MatC];
@@ -1373,7 +1373,7 @@ extern "C" __global__ void scaleFC_comp_D3Q27F3( real* DC,
 	   f0MMdest = &DC[dirTN  *size_MatC];
 	   f0PMdest = &DC[dirTS  *size_MatC];
 	   f0MPdest = &DC[dirBN  *size_MatC];
-	   f000dest = &DC[dirZERO*size_MatC];
+	   f000dest = &DC[dirREST*size_MatC];
 	   fMMMdest = &DC[dirTNE *size_MatC];
 	   fMMPdest = &DC[dirBNE *size_MatC];
 	   fMPPdest = &DC[dirBSE *size_MatC];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/SchlafferBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/SchlafferBCs27.cu
index 899a31a6e..c6c3255ab 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/SchlafferBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/SchlafferBCs27.cu
@@ -88,7 +88,7 @@ extern "C" __global__ void PressSchlaff27(real* rhoBC,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -118,7 +118,7 @@ extern "C" __global__ void PressSchlaff27(real* rhoBC,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -149,7 +149,7 @@ extern "C" __global__ void PressSchlaff27(real* rhoBC,
       f1_BS   = (D.f[dirBS  ])[kbs  ];
       f1_BN   = (D.f[dirBN  ])[kbn  ];
       f1_TS   = (D.f[dirTS  ])[kts  ];
-      f1_ZERO = (D.f[dirZERO])[kzero];
+      f1_ZERO = (D.f[dirREST])[kzero];
       f1_TNE  = (D.f[dirTNE ])[ktne ];
       f1_TSW  = (D.f[dirTSW ])[ktsw ];
       f1_TSE  = (D.f[dirTSE ])[ktse ];
@@ -352,7 +352,7 @@ extern "C" __global__ void VelSchlaff27(  int t,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -382,7 +382,7 @@ extern "C" __global__ void VelSchlaff27(  int t,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -414,7 +414,7 @@ extern "C" __global__ void VelSchlaff27(  int t,
       f1_BS   = (D.f[dirBS  ])[kbs  ];
       f1_BN   = (D.f[dirBN  ])[kbn  ];
       f1_TS   = (D.f[dirTS  ])[kts  ];
-      f1_ZERO = (D.f[dirZERO])[kzero];
+      f1_ZERO = (D.f[dirREST])[kzero];
       f1_TNE  = (D.f[dirTNE ])[ktne ];
       f1_TSW  = (D.f[dirTSW ])[ktsw ];
       f1_TSE  = (D.f[dirTSE ])[ktse ];
@@ -441,7 +441,7 @@ extern "C" __global__ void VelSchlaff27(  int t,
       //f1_TN   = (D.f[dirBS  ])[kbs  ];
       //f1_TS   = (D.f[dirBN  ])[kbn  ];
       //f1_BN   = (D.f[dirTS  ])[kts  ];
-      //f1_ZERO = (D.f[dirZERO])[kzero];
+      //f1_ZERO = (D.f[dirREST])[kzero];
       //f1_BSW  = (D.f[dirTNE ])[ktne ];
       //f1_BNE  = (D.f[dirTSW ])[ktsw ];
       //f1_BNW  = (D.f[dirTSE ])[ktse ];
@@ -570,7 +570,7 @@ extern "C" __global__ void VelSchlaff27(  int t,
       //(D.f[dirBS  ])[kbs  ] = f1_TN  -c1over54*drho1;
       //(D.f[dirBN  ])[kbn  ] = f1_TS  -c1over54*drho1;
       //(D.f[dirTS  ])[kts  ] = f1_BN  -c1over54*drho1;
-      //(D.f[dirZERO])[kzero] = f1_ZERO-c8over27*drho1;
+      //(D.f[dirREST])[kzero] = f1_ZERO-c8over27*drho1;
       //(D.f[dirTNE ])[ktne ] = f1_BSW -c1over216*drho1;
       //(D.f[dirTSW ])[ktsw ] = f1_BNE -c1over216*drho1;
       //(D.f[dirTSE ])[ktse ] = f1_BNW -c1over216*drho1;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/SetForcing27.cu b/src/gpu/VirtualFluids_GPU/GPU/SetForcing27.cu
index 97c351b8b..a16aaa8ca 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/SetForcing27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/SetForcing27.cu
@@ -39,7 +39,7 @@ extern "C" __global__ void GetVeloforForcing27( real* DD,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -69,7 +69,7 @@ extern "C" __global__ void GetVeloforForcing27( real* DD,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -140,7 +140,7 @@ extern "C" __global__ void GetVeloforForcing27( real* DD,
 		real mfbaa = (D.f[dirBS  ])[kbs  ];
 		real mfbca = (D.f[dirBN  ])[kbn  ];
 		real mfbac = (D.f[dirTS  ])[kts  ];
-		real mfbbb = (D.f[dirZERO])[kzero];
+		real mfbbb = (D.f[dirREST])[kzero];
 		real mfccc = (D.f[dirTNE ])[ktne ];
 		real mfaac = (D.f[dirTSW ])[ktsw ];
 		real mfcac = (D.f[dirTSE ])[ktse ];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/SlipBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/SlipBCs27.cu
index 804aa496b..650ce293e 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/SlipBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/SlipBCs27.cu
@@ -38,7 +38,7 @@ extern "C" __global__ void QSlipDevice27(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -68,7 +68,7 @@ extern "C" __global__ void QSlipDevice27(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -184,7 +184,7 @@ extern "C" __global__ void QSlipDevice27(real* DD,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -222,7 +222,7 @@ extern "C" __global__ void QSlipDevice27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -252,7 +252,7 @@ extern "C" __global__ void QSlipDevice27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -264,7 +264,7 @@ extern "C" __global__ void QSlipDevice27(real* DD,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  real fac = c1o1;//c99o100;
 	  real VeloX = fac*vx1;
@@ -688,7 +688,7 @@ extern "C" __global__ void QSlipDeviceComp27(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -718,7 +718,7 @@ extern "C" __global__ void QSlipDeviceComp27(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -835,7 +835,7 @@ extern "C" __global__ void QSlipDeviceComp27(real* DD,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -873,7 +873,7 @@ extern "C" __global__ void QSlipDeviceComp27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -903,7 +903,7 @@ extern "C" __global__ void QSlipDeviceComp27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -915,7 +915,7 @@ extern "C" __global__ void QSlipDeviceComp27(real* DD,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  real fac = c1o1;//c99o100;
 	  real VeloX = fac*vx1;
@@ -1354,7 +1354,7 @@ extern "C" __global__ void QSlipDeviceComp27TurbViscosity(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1384,7 +1384,7 @@ extern "C" __global__ void QSlipDeviceComp27TurbViscosity(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1501,7 +1501,7 @@ extern "C" __global__ void QSlipDeviceComp27TurbViscosity(real* DD,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -1539,7 +1539,7 @@ extern "C" __global__ void QSlipDeviceComp27TurbViscosity(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1569,7 +1569,7 @@ extern "C" __global__ void QSlipDeviceComp27TurbViscosity(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1581,7 +1581,7 @@ extern "C" __global__ void QSlipDeviceComp27TurbViscosity(real* DD,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  real om_turb = om1 / (c1o1 + c3o1*om1*max(c0o1, turbViscosity[k_Q[k]]));
      
@@ -2061,7 +2061,7 @@ extern "C" __global__ void QSlipGeomDeviceComp27(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2091,7 +2091,7 @@ extern "C" __global__ void QSlipGeomDeviceComp27(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2303,7 +2303,7 @@ extern "C" __global__ void QSlipGeomDeviceComp27(real* DD,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -2341,7 +2341,7 @@ extern "C" __global__ void QSlipGeomDeviceComp27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2371,7 +2371,7 @@ extern "C" __global__ void QSlipGeomDeviceComp27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2401,11 +2401,11 @@ extern "C" __global__ void QSlipGeomDeviceComp27(real* DD,
 
 	  //fac = fac * magS / (c1o3 * (one / om1 - c1o2));
    //   ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-	  //real *facAst = &QQ[dirZERO * numberOfBCnodes];
+	  //real *facAst = &QQ[dirREST * numberOfBCnodes];
 
 	  //fac = fac * alpha + facAst[k] * (one - alpha);
 	  //facAst[k] = fac;
-	  //(&QQ[dirZERO * numberOfBCnodes])[KQK] = fac;
+	  //(&QQ[dirREST * numberOfBCnodes])[KQK] = fac;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  ////real uk = sqrtf(vx1*vx1 + vx2*vx2 + vx3*vx3);
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -2947,7 +2947,7 @@ extern "C" __global__ void QSlipNormDeviceComp27(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2977,7 +2977,7 @@ extern "C" __global__ void QSlipNormDeviceComp27(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3189,7 +3189,7 @@ extern "C" __global__ void QSlipNormDeviceComp27(real* DD,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -3227,7 +3227,7 @@ extern "C" __global__ void QSlipNormDeviceComp27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3257,7 +3257,7 @@ extern "C" __global__ void QSlipNormDeviceComp27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3287,11 +3287,11 @@ extern "C" __global__ void QSlipNormDeviceComp27(real* DD,
 
 	  fac = fac * magS / (c1o3 * (c1o1 / om1 - c1o2));
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-	  real *facAst = &QQ[dirZERO * numberOfBCnodes];
+	  real *facAst = &QQ[dirREST * numberOfBCnodes];
 
 	  fac = fac * alpha + facAst[k] * (c1o1 - alpha);
 	  facAst[k] = fac;
-	  //(&QQ[dirZERO * numberOfBCnodes])[KQK] = fac;
+	  //(&QQ[dirREST * numberOfBCnodes])[KQK] = fac;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	  ////real uk = sqrtf(vx1*vx1 + vx2*vx2 + vx3*vx3);
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/gpu/VirtualFluids_GPU/GPU/StressBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/StressBCs27.cu
index 822e5c488..97731f982 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/StressBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/StressBCs27.cu
@@ -188,7 +188,7 @@ extern "C" __global__ void QStressDeviceComp27(real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -218,7 +218,7 @@ extern "C" __global__ void QStressDeviceComp27(real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -338,7 +338,7 @@ extern "C" __global__ void QStressDeviceComp27(real* DD,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW +
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]);
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]);
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -377,7 +377,7 @@ extern "C" __global__ void QStressDeviceComp27(real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -407,7 +407,7 @@ extern "C" __global__ void QStressDeviceComp27(real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -963,7 +963,7 @@ extern "C" __global__ void BBStressDevice27( real* DD,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -993,7 +993,7 @@ extern "C" __global__ void BBStressDevice27( real* DD,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1114,7 +1114,7 @@ extern "C" __global__ void BBStressDevice27( real* DD,
       real vx1, vx2, vx3, drho;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW +
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]);
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]);
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -1150,7 +1150,7 @@ extern "C" __global__ void BBStressDevice27( real* DD,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1180,7 +1180,7 @@ extern "C" __global__ void BBStressDevice27( real* DD,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/ThinWallBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/ThinWallBCs27.cu
index a82d36323..3f396b7ab 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/ThinWallBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/ThinWallBCs27.cu
@@ -50,7 +50,7 @@ extern "C" __global__ void QVelDeviceCompThinWallsPartOne27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -80,7 +80,7 @@ extern "C" __global__ void QVelDeviceCompThinWallsPartOne27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -203,7 +203,7 @@ extern "C" __global__ void QVelDeviceCompThinWallsPartOne27(
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -479,7 +479,7 @@ extern "C" __global__ void QDeviceCompThinWallsPartOne27(
 		D.f[dirBS] = &DD[dirBS  *size_Mat];
 		D.f[dirBN] = &DD[dirBN  *size_Mat];
 		D.f[dirTS] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE] = &DD[dirTSE *size_Mat];
@@ -509,7 +509,7 @@ extern "C" __global__ void QDeviceCompThinWallsPartOne27(
 		D.f[dirTN] = &DD[dirBS  *size_Mat];
 		D.f[dirTS] = &DD[dirBN  *size_Mat];
 		D.f[dirBN] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE] = &DD[dirBNW *size_Mat];
@@ -628,7 +628,7 @@ extern "C" __global__ void QDeviceCompThinWallsPartOne27(
 		real vx1, vx2, vx3, drho, feq, q;
 		drho = f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 			f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW +
-			f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]);
+			f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]);
 
 		vx1 = (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
 			((f_BE - f_TW) + (f_TE - f_BW)) + ((f_SE - f_NW) + (f_NE - f_SW)) +
@@ -997,7 +997,7 @@ extern "C" __global__ void QThinWallsPartTwo27(
 		  D.f[dirBS] = &DD[dirBS  *size_Mat];
 		  D.f[dirBN] = &DD[dirBN  *size_Mat];
 		  D.f[dirTS] = &DD[dirTS  *size_Mat];
-		  D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		  D.f[dirREST] = &DD[dirREST*size_Mat];
 		  D.f[dirTNE] = &DD[dirTNE *size_Mat];
 		  D.f[dirTSW] = &DD[dirTSW *size_Mat];
 		  D.f[dirTSE] = &DD[dirTSE *size_Mat];
@@ -1027,7 +1027,7 @@ extern "C" __global__ void QThinWallsPartTwo27(
 		  D.f[dirTN] = &DD[dirBS  *size_Mat];
 		  D.f[dirTS] = &DD[dirBN  *size_Mat];
 		  D.f[dirBN] = &DD[dirTS  *size_Mat];
-		  D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		  D.f[dirREST] = &DD[dirREST*size_Mat];
 		  D.f[dirTNE] = &DD[dirBSW *size_Mat];
 		  D.f[dirTSW] = &DD[dirBNE *size_Mat];
 		  D.f[dirTSE] = &DD[dirBNW *size_Mat];
@@ -1057,7 +1057,7 @@ extern "C" __global__ void QThinWallsPartTwo27(
          DN.f[dirBS  ] = &DD[dirBS  *size_Mat];
          DN.f[dirBN  ] = &DD[dirBN  *size_Mat];
          DN.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         DN.f[dirZERO] = &DD[dirZERO*size_Mat];
+         DN.f[dirREST] = &DD[dirREST*size_Mat];
          DN.f[dirTNE ] = &DD[dirTNE *size_Mat];
          DN.f[dirTSW ] = &DD[dirTSW *size_Mat];
          DN.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1087,7 +1087,7 @@ extern "C" __global__ void QThinWallsPartTwo27(
          DN.f[dirTN  ] = &DD[dirBS  *size_Mat];
          DN.f[dirTS  ] = &DD[dirBN  *size_Mat];
          DN.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         DN.f[dirZERO] = &DD[dirZERO*size_Mat];
+         DN.f[dirREST] = &DD[dirREST*size_Mat];
          DN.f[dirTNE ] = &DD[dirBSW *size_Mat];
          DN.f[dirTSW ] = &DD[dirBNE *size_Mat];
          DN.f[dirTSE ] = &DD[dirBNW *size_Mat];
diff --git a/src/gpu/VirtualFluids_GPU/GPU/VelocityBCs27.cu b/src/gpu/VirtualFluids_GPU/GPU/VelocityBCs27.cu
index ae1362d1d..942aa76de 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/VelocityBCs27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/VelocityBCs27.cu
@@ -51,7 +51,7 @@ extern "C" __global__ void QVelDeviceCompPlusSlip27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -81,7 +81,7 @@ extern "C" __global__ void QVelDeviceCompPlusSlip27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -204,7 +204,7 @@ extern "C" __global__ void QVelDeviceCompPlusSlip27(
 	   real vx1, vx2, vx3, drho, feq, q;
 	   drho = f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 		   f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW +
-		   f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]);
+		   f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]);
 
 	   vx1 = (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
 		   ((f_BE - f_TW) + (f_TE - f_BW)) + ((f_SE - f_NW) + (f_NE - f_SW)) +
@@ -242,7 +242,7 @@ extern "C" __global__ void QVelDeviceCompPlusSlip27(
 		   D.f[dirBS] = &DD[dirBS  *size_Mat];
 		   D.f[dirBN] = &DD[dirBN  *size_Mat];
 		   D.f[dirTS] = &DD[dirTS  *size_Mat];
-		   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		   D.f[dirREST] = &DD[dirREST*size_Mat];
 		   D.f[dirTNE] = &DD[dirTNE *size_Mat];
 		   D.f[dirTSW] = &DD[dirTSW *size_Mat];
 		   D.f[dirTSE] = &DD[dirTSE *size_Mat];
@@ -272,7 +272,7 @@ extern "C" __global__ void QVelDeviceCompPlusSlip27(
 		   D.f[dirTN] = &DD[dirBS  *size_Mat];
 		   D.f[dirTS] = &DD[dirBN  *size_Mat];
 		   D.f[dirBN] = &DD[dirTS  *size_Mat];
-		   D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		   D.f[dirREST] = &DD[dirREST*size_Mat];
 		   D.f[dirTNE] = &DD[dirBSW *size_Mat];
 		   D.f[dirTSW] = &DD[dirBNE *size_Mat];
 		   D.f[dirTSE] = &DD[dirBNW *size_Mat];
@@ -284,7 +284,7 @@ extern "C" __global__ void QVelDeviceCompPlusSlip27(
 	   }
 	   ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 	   //Test
-	   //(D.f[dirZERO])[k]=c1o10;
+	   //(D.f[dirREST])[k]=c1o10;
 	   ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 	   //ToDo anders Klammern
@@ -630,7 +630,7 @@ extern "C" __global__ void QVeloDeviceEQ27(real* VeloX,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -660,7 +660,7 @@ extern "C" __global__ void QVeloDeviceEQ27(real* VeloX,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -692,7 +692,7 @@ extern "C" __global__ void QVeloDeviceEQ27(real* VeloX,
 			real mfbaa = (D.f[dirBS  ])[kbs  ];
 			real mfbca = (D.f[dirBN  ])[kbn  ];
 			real mfbac = (D.f[dirTS  ])[kts  ];
-			real mfbbb = (D.f[dirZERO])[kzero];
+			real mfbbb = (D.f[dirREST])[kzero];
 			real mfccc = (D.f[dirTNE ])[ktne ];
 			real mfaac = (D.f[dirTSW ])[ktsw ];
 			real mfcac = (D.f[dirTSE ])[ktse ];
@@ -780,7 +780,7 @@ extern "C" __global__ void QVeloDeviceEQ27(real* VeloX,
 			(D.f[dirBS  ])[kbs  ] = mfbcc;//mfbaa;
 			(D.f[dirBN  ])[kbn  ] = mfbac;//mfbca;
 			(D.f[dirTS  ])[kts  ] = mfbca;//mfbac;
-			(D.f[dirZERO])[kzero] = mfbbb;//mfbbb;
+			(D.f[dirREST])[kzero] = mfbbb;//mfbbb;
 			(D.f[dirTNE ])[ktne ] = mfaaa;//mfccc;
 			(D.f[dirTSW ])[ktsw ] = mfcca;//mfaac;
 			(D.f[dirTSE ])[ktse ] = mfaca;//mfcac;
@@ -911,7 +911,7 @@ extern "C" __global__ void QVeloStreetDeviceEQ27(
 			D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 			D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 			D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 			D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 			D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -941,7 +941,7 @@ extern "C" __global__ void QVeloStreetDeviceEQ27(
 			D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 			D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 			D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 			D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 			D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -973,7 +973,7 @@ extern "C" __global__ void QVeloStreetDeviceEQ27(
 		real mfbaa = (D.f[dirBS  ])[kbs  ];
 		real mfbca = (D.f[dirBN  ])[kbn  ];
 		real mfbac = (D.f[dirTS  ])[kts  ];
-		real mfbbb = (D.f[dirZERO])[kzero];
+		real mfbbb = (D.f[dirREST])[kzero];
 		real mfccc = (D.f[dirTNE ])[ktne ];
 		real mfaac = (D.f[dirTSW ])[ktsw ];
 		real mfcac = (D.f[dirTSE ])[ktse ];
@@ -1066,7 +1066,7 @@ extern "C" __global__ void QVeloStreetDeviceEQ27(
 		(D.f[dirBS  ])[kbs  ] = mfbcc;//mfbaa;
 		(D.f[dirBN  ])[kbn  ] = mfbac;//mfbca;
 		(D.f[dirTS  ])[kts  ] = mfbca;//mfbac;
-		(D.f[dirZERO])[kzero] = mfbbb;//mfbbb;
+		(D.f[dirREST])[kzero] = mfbbb;//mfbbb;
 		(D.f[dirTNE ])[ktne ] = mfaaa;//mfccc;
 		(D.f[dirTSW ])[ktsw ] = mfcca;//mfaac;
 		(D.f[dirTSE ])[ktse ] = mfaca;//mfcac;
@@ -1155,7 +1155,7 @@ extern "C" __global__ void QVelDeviceIncompHighNu27(int inx,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1185,7 +1185,7 @@ extern "C" __global__ void QVelDeviceIncompHighNu27(int inx,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1308,7 +1308,7 @@ extern "C" __global__ void QVelDeviceIncompHighNu27(int inx,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -1346,7 +1346,7 @@ extern "C" __global__ void QVelDeviceIncompHighNu27(int inx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1376,7 +1376,7 @@ extern "C" __global__ void QVelDeviceIncompHighNu27(int inx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1388,7 +1388,7 @@ extern "C" __global__ void QVelDeviceIncompHighNu27(int inx,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 	  //ToDo anders Klammern
@@ -1653,7 +1653,7 @@ extern "C" __global__ void QVelDeviceCompHighNu27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1683,7 +1683,7 @@ extern "C" __global__ void QVelDeviceCompHighNu27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1832,7 +1832,7 @@ extern "C" __global__ void QVelDeviceCompHighNu27(
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -1870,7 +1870,7 @@ extern "C" __global__ void QVelDeviceCompHighNu27(
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -1900,7 +1900,7 @@ extern "C" __global__ void QVelDeviceCompHighNu27(
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -1912,7 +1912,7 @@ extern "C" __global__ void QVelDeviceCompHighNu27(
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 	  //ToDo anders Klammern
@@ -2317,7 +2317,7 @@ extern "C" __global__ void QVelDeviceCompZeroPress27(
       //!
       real drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                      f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                     f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirZERO])[kzero]); 
+                     f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirREST])[kzero]); 
 
       real vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                       ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -2661,7 +2661,7 @@ extern "C" __global__ void QVelDeviceCompZeroPress1h27( int inx,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2691,7 +2691,7 @@ extern "C" __global__ void QVelDeviceCompZeroPress1h27( int inx,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -2815,7 +2815,7 @@ extern "C" __global__ void QVelDeviceCompZeroPress1h27( int inx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -2845,7 +2845,7 @@ extern "C" __global__ void QVelDeviceCompZeroPress1h27( int inx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3143,7 +3143,7 @@ extern "C" __global__ void LB_BC_Vel_West_27( int nx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3173,7 +3173,7 @@ extern "C" __global__ void LB_BC_Vel_West_27( int nx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3318,7 +3318,7 @@ extern "C" __global__ void LB_BC_Vel_West_27( int nx,
       f1_TN   = (D.f[dirBS  ])[k1bs  ];
       f1_TS   = (D.f[dirBN  ])[k1bn  ];
       f1_BN   = (D.f[dirTS  ])[k1ts  ];
-      f1_ZERO = (D.f[dirZERO])[k1zero];
+      f1_ZERO = (D.f[dirREST])[k1zero];
       f1_BSW  = (D.f[dirTNE ])[k1tne ];
       f1_BNE  = (D.f[dirTSW ])[k1tsw ];
       f1_BNW  = (D.f[dirTSE ])[k1tse ];
@@ -3342,7 +3342,7 @@ extern "C" __global__ void LB_BC_Vel_West_27( int nx,
 
       real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-      (D.f[dirZERO])[kzero] =   c8o27* (drho-cu_sq);
+      (D.f[dirREST])[kzero] =   c8o27* (drho-cu_sq);
       (D.f[dirE   ])[ke   ] =   c2o27* (drho+c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq);
       (D.f[dirW   ])[kw   ] =   c2o27* (drho+c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq);
       (D.f[dirN   ])[kn   ] =   c2o27* (drho+c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq);
@@ -3639,7 +3639,7 @@ extern "C" __global__ void QVelDevCouette27(real* vx,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3669,7 +3669,7 @@ extern "C" __global__ void QVelDevCouette27(real* vx,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -3810,7 +3810,7 @@ extern "C" __global__ void QVelDevCouette27(real* vx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -3840,7 +3840,7 @@ extern "C" __global__ void QVelDevCouette27(real* vx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4006,7 +4006,7 @@ extern "C" __global__ void QVelDev1h27( int inx,
 		D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 		D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 		D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 		D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 		D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4036,7 +4036,7 @@ extern "C" __global__ void QVelDev1h27( int inx,
 		D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 		D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 		D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-		D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		D.f[dirREST] = &DD[dirREST*size_Mat];
 		D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 		D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 		D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4197,7 +4197,7 @@ extern "C" __global__ void QVelDev1h27( int inx,
 		real /*vx1, vx2,*/ vx3, drho, feq, q, cu_sq;
 		//drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
 		//	f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-		//	f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+		//	f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
 		//vx1    =  ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
 		//	((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -4235,7 +4235,7 @@ extern "C" __global__ void QVelDev1h27( int inx,
 			D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 			D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 			D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 			D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 			D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -4265,7 +4265,7 @@ extern "C" __global__ void QVelDev1h27( int inx,
 			D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 			D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 			D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirBSW *size_Mat];
 			D.f[dirTSW ] = &DD[dirBNE *size_Mat];
 			D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -4277,7 +4277,7 @@ extern "C" __global__ void QVelDev1h27( int inx,
 		}
 		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 		//Test
-		//(D.f[dirZERO])[k]=c1o10;
+		//(D.f[dirREST])[k]=c1o10;
 		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 		//ToDo anders Klammern
@@ -4869,7 +4869,7 @@ extern "C" __global__ void QVelDeviceComp27(
       //!
       real drho = f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                   f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                  f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirZERO])[kzero]); 
+                  f_T + f_B + f_N + f_S + f_E + f_W + ((dist.f[dirREST])[kzero]); 
 
       real vx1  = (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                    ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -5207,7 +5207,7 @@ extern "C" __global__ void QVelDevice27(int inx,
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -5237,7 +5237,7 @@ extern "C" __global__ void QVelDevice27(int inx,
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -5388,7 +5388,7 @@ extern "C" __global__ void QVelDevice27(int inx,
       real vx1, vx2, vx3, drho, feq, q;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
       vx1    =  ((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                 ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -5426,7 +5426,7 @@ extern "C" __global__ void QVelDevice27(int inx,
          D.f[dirBS  ] = &DD[dirBS  *size_Mat];
          D.f[dirBN  ] = &DD[dirBN  *size_Mat];
          D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirTNE *size_Mat];
          D.f[dirTSW ] = &DD[dirTSW *size_Mat];
          D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -5456,7 +5456,7 @@ extern "C" __global__ void QVelDevice27(int inx,
          D.f[dirTN  ] = &DD[dirBS  *size_Mat];
          D.f[dirTS  ] = &DD[dirBN  *size_Mat];
          D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-         D.f[dirZERO] = &DD[dirZERO*size_Mat];
+         D.f[dirREST] = &DD[dirREST*size_Mat];
          D.f[dirTNE ] = &DD[dirBSW *size_Mat];
          D.f[dirTSW ] = &DD[dirBNE *size_Mat];
          D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -5468,7 +5468,7 @@ extern "C" __global__ void QVelDevice27(int inx,
       }
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Test
-      //(D.f[dirZERO])[k]=c1o10;
+      //(D.f[dirREST])[k]=c1o10;
       ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 	  //ToDo anders Klammern
@@ -5772,7 +5772,7 @@ extern "C" __global__ void PropellerBC(unsigned int* neighborX,
 			D.f[dirBS  ] = &DD[dirBS  *size_Mat];
 			D.f[dirBN  ] = &DD[dirBN  *size_Mat];
 			D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirTNE ] = &DD[dirTNE *size_Mat];
 			D.f[dirTSW ] = &DD[dirTSW *size_Mat];
 			D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -5802,7 +5802,7 @@ extern "C" __global__ void PropellerBC(unsigned int* neighborX,
 			D.f[dirTN  ] = &DD[dirBS  *size_Mat];
 			D.f[dirTS  ] = &DD[dirBN  *size_Mat];
 			D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-			D.f[dirZERO] = &DD[dirZERO*size_Mat];
+			D.f[dirREST] = &DD[dirREST*size_Mat];
 			D.f[dirBSW ] = &DD[dirTNE *size_Mat];
 			D.f[dirBNE ] = &DD[dirTSW *size_Mat];
 			D.f[dirBNW ] = &DD[dirTSE *size_Mat];
@@ -5858,7 +5858,7 @@ extern "C" __global__ void PropellerBC(unsigned int* neighborX,
 		real f_E,  f_W,  f_N,  f_S,  f_T,  f_B,   f_NE,  f_SW,  f_SE,  f_NW,  f_TE,  f_BW,  f_BE,
 		f_TW, f_TN, f_BS, f_BN, f_TS, f_TNE, f_TSW, f_TSE, f_TNW, f_BNE, f_BSW, f_BSE, f_BNW, f_ZERO;
 
-		f_ZERO= (D.f[dirZERO])[kzero];
+		f_ZERO= (D.f[dirREST])[kzero];
 		f_E   = (D.f[dirE   ])[ke   ];
 		f_W   = (D.f[dirW   ])[kw   ];
 		f_N   = (D.f[dirN   ])[kn   ];
@@ -5991,7 +5991,7 @@ extern "C" __global__ void PropellerBC(unsigned int* neighborX,
          f_BSE  = f_BSE  + ((c1o1+drho) * (-  c1o216*(c3o1*( vxo1-vxo2-vxo3)+c9o2*( vxo1-vxo2-vxo3)*( vxo1-vxo2-vxo3)-cusq) +   c1o216*(c3o1*( vx1-vx2-vx3)+c9o2*( vx1-vx2-vx3)*( vx1-vx2-vx3)-cusq2)));
          f_TNW  = f_TNW  + ((c1o1+drho) * (-  c1o216*(c3o1*(-vxo1+vxo2+vxo3)+c9o2*(-vxo1+vxo2+vxo3)*(-vxo1+vxo2+vxo3)-cusq) +   c1o216*(c3o1*(-vx1+vx2+vx3)+c9o2*(-vx1+vx2+vx3)*(-vx1+vx2+vx3)-cusq2)));
 
-		(D.f[dirZERO])[kzero] =  f_ZERO;
+		(D.f[dirREST])[kzero] =  f_ZERO;
         (D.f[dirE   ])[ke   ] =  f_E   ;	// f_W   ;//    	
         (D.f[dirW   ])[kw   ] =  f_W   ;	// f_E   ;//    	
         (D.f[dirN   ])[kn   ] =  f_N   ;	// f_S   ;//    	
@@ -6020,7 +6020,7 @@ extern "C" __global__ void PropellerBC(unsigned int* neighborX,
         (D.f[dirTNW ])[ktnw ] =  f_TNW ;	// f_TSE ;//    	
 
 		//////////////////////////////////////////////////////////////////////////
-        ////(D.f[dirZERO])[kzero] =   c8over27* (drho-cu_sq);
+        ////(D.f[dirREST])[kzero] =   c8over27* (drho-cu_sq);
         //(D.f[dirE   ])[ke   ] =   three*c2over27* ( vx1        );		//six
         //(D.f[dirW   ])[kw   ] =   three*c2over27* (-vx1        );		//six
         //(D.f[dirN   ])[kn   ] =   three*c2over27* (     vx2    );		//six
@@ -6047,7 +6047,7 @@ extern "C" __global__ void PropellerBC(unsigned int* neighborX,
         //(D.f[dirBNW ])[kbnw ] =   three*c1over216*(-vx1+vx2-vx3);		//six
         //(D.f[dirBSE ])[kbse ] =   three*c1over216*( vx1-vx2-vx3);		//six
         //(D.f[dirTNW ])[ktnw ] =   three*c1over216*(-vx1+vx2+vx3);		//six
-        //(D.f[dirZERO])[kzero] =   c8over27* (drho-cu_sq);
+        //(D.f[dirREST])[kzero] =   c8over27* (drho-cu_sq);
         //(D.f[dirE   ])[ke   ] =   c2over27* (drho+three*( vx1        )+c9over2*( vx1        )*( vx1        )-cu_sq);
         //(D.f[dirW   ])[kw   ] =   c2over27* (drho+three*(-vx1        )+c9over2*(-vx1        )*(-vx1        )-cu_sq);
         //(D.f[dirN   ])[kn   ] =   c2over27* (drho+three*(    vx2     )+c9over2*(     vx2    )*(     vx2    )-cu_sq);
diff --git a/src/gpu/VirtualFluids_GPU/GPU/WaleCumulant27.cu b/src/gpu/VirtualFluids_GPU/GPU/WaleCumulant27.cu
index e911a716c..f7decf118 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/WaleCumulant27.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/WaleCumulant27.cu
@@ -66,7 +66,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalav_Cum_AA2016_Comp_SP_27(
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -96,7 +96,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalav_Cum_AA2016_Comp_SP_27(
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -136,7 +136,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalav_Cum_AA2016_Comp_SP_27(
 			real mfbaa = (D.f[dirBS])[kbs];
 			real mfbca = (D.f[dirBN])[kb];
 			real mfbac = (D.f[dirTS])[ks];
-			real mfbbb = (D.f[dirZERO])[k];
+			real mfbbb = (D.f[dirREST])[k];
 			real mfccc = (D.f[dirTNE])[k];
 			real mfaac = (D.f[dirTSW])[ksw];
 			real mfcac = (D.f[dirTSE])[ks];
@@ -1023,7 +1023,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalav_Cum_AA2016_Comp_SP_27(
 			(D.f[dirBS])[kbs] = mfbcc;
 			(D.f[dirBN])[kb] = mfbac;
 			(D.f[dirTS])[ks] = mfbca;
-			(D.f[dirZERO])[k] = mfbbb;
+			(D.f[dirREST])[k] = mfbbb;
 			(D.f[dirTNE])[k] = mfaaa;
 			(D.f[dirTSE])[ks] = mfaca;
 			(D.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/GPU/WallFunction.cu b/src/gpu/VirtualFluids_GPU/GPU/WallFunction.cu
index df5fdc675..c0f4c1092 100644
--- a/src/gpu/VirtualFluids_GPU/GPU/WallFunction.cu
+++ b/src/gpu/VirtualFluids_GPU/GPU/WallFunction.cu
@@ -43,7 +43,7 @@ extern "C" __global__ void WallFunction27(
       D.f[dirBS  ] = &DD[dirBS  *size_Mat];
       D.f[dirBN  ] = &DD[dirBN  *size_Mat];
       D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirTNE *size_Mat];
       D.f[dirTSW ] = &DD[dirTSW *size_Mat];
       D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -73,7 +73,7 @@ extern "C" __global__ void WallFunction27(
       D.f[dirTN  ] = &DD[dirBS  *size_Mat];
       D.f[dirTS  ] = &DD[dirBN  *size_Mat];
       D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+      D.f[dirREST] = &DD[dirREST*size_Mat];
       D.f[dirTNE ] = &DD[dirBSW *size_Mat];
       D.f[dirTSW ] = &DD[dirBNE *size_Mat];
       D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -197,7 +197,7 @@ extern "C" __global__ void WallFunction27(
       real vx1, drho;
       drho   =  f_TSE + f_TNW + f_TNE + f_TSW + f_BSE + f_BNW + f_BNE + f_BSW +
                 f_BN + f_TS + f_TN + f_BS + f_BE + f_TW + f_TE + f_BW + f_SE + f_NW + f_NE + f_SW + 
-                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirZERO])[kzero]); 
+                f_T + f_B + f_N + f_S + f_E + f_W + ((D.f[dirREST])[kzero]); 
 
        vx1    =  (((f_TSE - f_BNW) - (f_TNW - f_BSE)) + ((f_TNE - f_BSW) - (f_TSW - f_BNE)) +
                  ((f_BE - f_TW)   + (f_TE - f_BW))   + ((f_SE - f_NW)   + (f_NE - f_SW)) +
@@ -251,7 +251,7 @@ extern "C" __global__ void WallFunction27(
    //      D.f[dirBS  ] = &DD[dirBS  *size_Mat];
    //      D.f[dirBN  ] = &DD[dirBN  *size_Mat];
    //      D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-   //      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //      D.f[dirREST] = &DD[dirREST*size_Mat];
    //      D.f[dirTNE ] = &DD[dirTNE *size_Mat];
    //      D.f[dirTSW ] = &DD[dirTSW *size_Mat];
    //      D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -281,7 +281,7 @@ extern "C" __global__ void WallFunction27(
    //      D.f[dirTN  ] = &DD[dirBS  *size_Mat];
    //      D.f[dirTS  ] = &DD[dirBN  *size_Mat];
    //      D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-   //      D.f[dirZERO] = &DD[dirZERO*size_Mat];
+   //      D.f[dirREST] = &DD[dirREST*size_Mat];
    //      D.f[dirTNE ] = &DD[dirBSW *size_Mat];
    //      D.f[dirTSW ] = &DD[dirBNE *size_Mat];
    //      D.f[dirTSE ] = &DD[dirBNW *size_Mat];
@@ -293,7 +293,7 @@ extern "C" __global__ void WallFunction27(
    //   }
    //   ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    //   //Test
-   //   //(D.f[dirZERO])[k]=c1o10;
+   //   //(D.f[dirREST])[k]=c1o10;
    //   ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 	  ////ToDo anders Klammern
diff --git a/src/gpu/VirtualFluids_GPU/Init/PositionReader.cpp b/src/gpu/VirtualFluids_GPU/Init/PositionReader.cpp
index e6ee3eb1c..52764b357 100644
--- a/src/gpu/VirtualFluids_GPU/Init/PositionReader.cpp
+++ b/src/gpu/VirtualFluids_GPU/Init/PositionReader.cpp
@@ -157,7 +157,7 @@ void PositionReader::definePropellerQs(Parameter* para)
 	Q.q27[dirBS  ] = &QQ[dirBS  *sizeQ];
 	Q.q27[dirBN  ] = &QQ[dirBN  *sizeQ];
 	Q.q27[dirTS  ] = &QQ[dirTS  *sizeQ];
-	Q.q27[dirZERO] = &QQ[dirZERO*sizeQ];
+	Q.q27[dirREST] = &QQ[dirREST*sizeQ];
 	Q.q27[dirTNE ] = &QQ[dirTNE *sizeQ];
 	Q.q27[dirTSW ] = &QQ[dirTSW *sizeQ];
 	Q.q27[dirTSE ] = &QQ[dirTSE *sizeQ];
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod27/ADComp27/ADComp27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod27/ADComp27/ADComp27_Device.cu
index 3ad149064..f853c6104 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod27/ADComp27/ADComp27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod27/ADComp27/ADComp27_Device.cu
@@ -55,7 +55,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -85,7 +85,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -117,7 +117,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 				D27.f[dirBS] = &DD27[dirBS  *size_Mat];
 				D27.f[dirBN] = &DD27[dirBN  *size_Mat];
 				D27.f[dirTS] = &DD27[dirTS  *size_Mat];
-				D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+				D27.f[dirREST] = &DD27[dirREST*size_Mat];
 				D27.f[dirTNE] = &DD27[dirTNE *size_Mat];
 				D27.f[dirTSW] = &DD27[dirTSW *size_Mat];
 				D27.f[dirTSE] = &DD27[dirTSE *size_Mat];
@@ -147,7 +147,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 				D27.f[dirTN] = &DD27[dirBS  *size_Mat];
 				D27.f[dirTS] = &DD27[dirBN  *size_Mat];
 				D27.f[dirBN] = &DD27[dirTS  *size_Mat];
-				D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+				D27.f[dirREST] = &DD27[dirREST*size_Mat];
 				D27.f[dirBSW] = &DD27[dirTNE *size_Mat];
 				D27.f[dirBNE] = &DD27[dirTSW *size_Mat];
 				D27.f[dirBNW] = &DD27[dirTSE *size_Mat];
@@ -186,7 +186,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 			real fTN = (D.f[dirBS])[kbs];
 			real fTS = (D.f[dirBN])[kb];//kbn
 			real fBN = (D.f[dirTS])[ks];//kts
-			real fZERO = (D.f[dirZERO])[k];//kzero
+			real fZERO = (D.f[dirREST])[k];//kzero
 			real fBSW = (D.f[dirTNE])[k];//ktne
 			real fBNE = (D.f[dirTSW])[ksw];//ktsw
 			real fBNW = (D.f[dirTSE])[ks];//ktse
@@ -214,7 +214,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 			real mfbaa = (D27.f[dirBS])[kbs];
 			real mfbca = (D27.f[dirBN])[kb];
 			real mfbac = (D27.f[dirTS])[ks];
-			real mfbbb = (D27.f[dirZERO])[k];
+			real mfbbb = (D27.f[dirREST])[k];
 			real mfccc = (D27.f[dirTNE])[k];
 			real mfaac = (D27.f[dirTSW])[ksw];
 			real mfcac = (D27.f[dirTSE])[ks];
@@ -790,7 +790,7 @@ extern "C" __global__ void LB_KERNEL_AD_COMP_27(real diffusivity,
 			(D27.f[dirBS])[kbs] = mfbcc;
 			(D27.f[dirBN])[kb] = mfbac;
 			(D27.f[dirTS])[ks] = mfbca;
-			(D27.f[dirZERO])[k] = mfbbb;
+			(D27.f[dirREST])[k] = mfbbb;
 			(D27.f[dirTNE])[k] = mfaaa;
 			(D27.f[dirTSE])[ks] = mfaca;
 			(D27.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod7/ADComp7/ADComp7_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod7/ADComp7/ADComp7_Device.cu
index d5de82af5..c9e0b79d3 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod7/ADComp7/ADComp7_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Compressible/Mod7/ADComp7/ADComp7_Device.cu
@@ -55,7 +55,7 @@ extern "C" __global__ void LB_Kernel_AD_Comp_7(real diffusivity,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -85,7 +85,7 @@ extern "C" __global__ void LB_Kernel_AD_Comp_7(real diffusivity,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -146,7 +146,7 @@ extern "C" __global__ void LB_Kernel_AD_Comp_7(real diffusivity,
 			real fTN = (D.f[dirBS])[kbs];
 			real fTS = (D.f[dirBN])[kb];//kbn
 			real fBN = (D.f[dirTS])[ks];//kts
-			real fZERO = (D.f[dirZERO])[k];//kzero
+			real fZERO = (D.f[dirREST])[k];//kzero
 			real fBSW = (D.f[dirTNE])[k];//ktne
 			real fBNE = (D.f[dirTSW])[ksw];//ktsw
 			real fBNW = (D.f[dirTSE])[ks];//ktse
@@ -173,7 +173,7 @@ extern "C" __global__ void LB_Kernel_AD_Comp_7(real diffusivity,
 										   //real fBS   =  (D.f[dirBS  ])[kbs];
 										   //real fBN   =  (D.f[dirBN  ])[kb ];//kbn
 										   //real fTS   =  (D.f[dirTS  ])[ks ];//kts
-										   //real fZERO =  (D.f[dirZERO])[k  ];//kzero
+										   //real fZERO =  (D.f[dirREST])[k  ];//kzero
 										   //real fTNE   = (D.f[dirTNE ])[k  ];//ktne
 										   //real fTSW   = (D.f[dirTSW ])[ksw];//ktsw
 										   //real fTSE   = (D.f[dirTSE ])[ks ];//ktse
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod27/ADIncomp27/ADIncomp27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod27/ADIncomp27/ADIncomp27_Device.cu
index d9586b2eb..1c4748025 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod27/ADIncomp27/ADIncomp27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod27/ADIncomp27/ADIncomp27_Device.cu
@@ -55,7 +55,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -85,7 +85,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -117,7 +117,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 				D27.f[dirBS] = &DD27[dirBS  *size_Mat];
 				D27.f[dirBN] = &DD27[dirBN  *size_Mat];
 				D27.f[dirTS] = &DD27[dirTS  *size_Mat];
-				D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+				D27.f[dirREST] = &DD27[dirREST*size_Mat];
 				D27.f[dirTNE] = &DD27[dirTNE *size_Mat];
 				D27.f[dirTSW] = &DD27[dirTSW *size_Mat];
 				D27.f[dirTSE] = &DD27[dirTSE *size_Mat];
@@ -147,7 +147,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 				D27.f[dirTN] = &DD27[dirBS  *size_Mat];
 				D27.f[dirTS] = &DD27[dirBN  *size_Mat];
 				D27.f[dirBN] = &DD27[dirTS  *size_Mat];
-				D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+				D27.f[dirREST] = &DD27[dirREST*size_Mat];
 				D27.f[dirBSW] = &DD27[dirTNE *size_Mat];
 				D27.f[dirBNE] = &DD27[dirTSW *size_Mat];
 				D27.f[dirBNW] = &DD27[dirTSE *size_Mat];
@@ -186,7 +186,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 			real fTN = (D.f[dirBS])[kbs];
 			real fTS = (D.f[dirBN])[kb];//kbn
 			real fBN = (D.f[dirTS])[ks];//kts
-			//real fZERO = (D.f[dirZERO])[k];//kzero
+			//real fZERO = (D.f[dirREST])[k];//kzero
 			real fBSW = (D.f[dirTNE])[k];//ktne
 			real fBNE = (D.f[dirTSW])[ksw];//ktsw
 			real fBNW = (D.f[dirTSE])[ks];//ktse
@@ -214,7 +214,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 										   //real f27BS   =  (D27.f[dirBS  ])[kbs];
 										   //real f27BN   =  (D27.f[dirBN  ])[kb ];//kbn
 										   //real f27TS   =  (D27.f[dirTS  ])[ks ];//kts
-										   //real f27ZERO =  (D27.f[dirZERO])[k  ];//kzero
+										   //real f27ZERO =  (D27.f[dirREST])[k  ];//kzero
 										   //real f27TNE  =  (D27.f[dirTNE ])[k  ];//ktne
 										   //real f27TSW  =  (D27.f[dirTSW ])[ksw];//ktsw
 										   //real f27TSE  =  (D27.f[dirTSE ])[ks ];//ktse
@@ -248,7 +248,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 			real mfbaa = (D27.f[dirBS])[kbs];
 			real mfbca = (D27.f[dirBN])[kb];
 			real mfbac = (D27.f[dirTS])[ks];
-			real mfbbb = (D27.f[dirZERO])[k];
+			real mfbbb = (D27.f[dirREST])[k];
 			real mfccc = (D27.f[dirTNE])[k];
 			real mfaac = (D27.f[dirTSW])[ksw];
 			real mfcac = (D27.f[dirTSE])[ks];
@@ -318,7 +318,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 			//(D27.f[ dirBS  ])[kbs ] = f27TN   *(one-omegaD)+omegaD* c1over54* ConcD*(one+three*(     vx2+vx3)+c9over2*(     vx2+vx3)*(     vx2+vx3)-cusq);
 			//(D27.f[ dirBN  ])[kb  ] = f27TS   *(one-omegaD)+omegaD* c1over54* ConcD*(one+three*(    -vx2+vx3)+c9over2*(    -vx2+vx3)*(    -vx2+vx3)-cusq);
 			//(D27.f[ dirTS  ])[ks  ] = f27BN   *(one-omegaD)+omegaD* c1over54* ConcD*(one+three*(     vx2-vx3)+c9over2*(     vx2-vx3)*(     vx2-vx3)-cusq);
-			//(D27.f[ dirZERO])[k   ] = f27ZERO *(one-omegaD)+omegaD* c8over27* ConcD*(one-cusq);
+			//(D27.f[ dirREST])[k   ] = f27ZERO *(one-omegaD)+omegaD* c8over27* ConcD*(one-cusq);
 			//(D27.f[ dirTNE ])[k   ] = f27BSW  *(one-omegaD)+omegaD* c1over216*ConcD*(one+three*(-vx1-vx2-vx3)+c9over2*(-vx1-vx2-vx3)*(-vx1-vx2-vx3)-cusq);
 			//(D27.f[ dirTSE ])[ks  ] = f27BNW  *(one-omegaD)+omegaD* c1over216*ConcD*(one+three*(-vx1+vx2-vx3)+c9over2*(-vx1+vx2-vx3)*(-vx1+vx2-vx3)-cusq);
 			//(D27.f[ dirBNE ])[kb  ] = f27TSW  *(one-omegaD)+omegaD* c1over216*ConcD*(one+three*(-vx1-vx2+vx3)+c9over2*(-vx1-vx2+vx3)*(-vx1-vx2+vx3)-cusq);
@@ -878,7 +878,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_27(real diffusivity,
 			(D27.f[dirBS])[kbs] = mfbcc;
 			(D27.f[dirBN])[kb] = mfbac;
 			(D27.f[dirTS])[ks] = mfbca;
-			(D27.f[dirZERO])[k] = mfbbb;
+			(D27.f[dirREST])[k] = mfbbb;
 			(D27.f[dirTNE])[k] = mfaaa;
 			(D27.f[dirTSE])[ks] = mfaca;
 			(D27.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod7/ADIncomp7/ADIncomp7_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod7/ADIncomp7/ADIncomp7_Device.cu
index 7ae4535d0..3ddcaa22d 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod7/ADIncomp7/ADIncomp7_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/AdvectionDiffusion/Incompressible/Mod7/ADIncomp7/ADIncomp7_Device.cu
@@ -55,7 +55,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_7(real diffusivity,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -85,7 +85,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_7(real diffusivity,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -146,7 +146,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_7(real diffusivity,
 			real fTN = (D.f[dirBS])[kbs];
 			real fTS = (D.f[dirBN])[kb];//kbn
 			real fBN = (D.f[dirTS])[ks];//kts
-			//real fZERO = (D.f[dirZERO])[k];//kzero
+			//real fZERO = (D.f[dirREST])[k];//kzero
 			real fBSW = (D.f[dirTNE])[k];//ktne
 			real fBNE = (D.f[dirTSW])[ksw];//ktsw
 			real fBNW = (D.f[dirTSE])[ks];//ktse
@@ -173,7 +173,7 @@ extern "C" __global__ void LB_Kernel_AD_Incomp_7(real diffusivity,
 										   //real fBS   =  (D.f[dirBS  ])[kbs];
 										   //real fBN   =  (D.f[dirBN  ])[kb ];//kbn
 										   //real fTS   =  (D.f[dirTS  ])[ks ];//kts
-										   //real fZERO =  (D.f[dirZERO])[k  ];//kzero
+										   //real fZERO =  (D.f[dirREST])[k  ];//kzero
 										   //real fTNE   = (D.f[dirTNE ])[k  ];//ktne
 										   //real fTSW   = (D.f[dirTSW ])[ksw];//ktsw
 										   //real fTSE   = (D.f[dirTSE ])[ks ];//ktse
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGK/BGKCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGK/BGKCompSP27_Device.cu
index c40397041..3829aac1e 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGK/BGKCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGK/BGKCompSP27_Device.cu
@@ -55,7 +55,7 @@ extern "C" __global__ void LB_Kernel_BGK_Comp_SP_27(	real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -85,7 +85,7 @@ extern "C" __global__ void LB_Kernel_BGK_Comp_SP_27(	real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -144,7 +144,7 @@ extern "C" __global__ void LB_Kernel_BGK_Comp_SP_27(	real omega,
 			real fBS = (D.f[dirBS])[kbs];
 			real fBN = (D.f[dirBN])[kb];//kbn
 			real fTS = (D.f[dirTS])[ks];//kts
-			real fZERO = (D.f[dirZERO])[k];//kzero
+			real fZERO = (D.f[dirREST])[k];//kzero
 			real fTNE = (D.f[dirTNE])[k];//ktne
 			real fTSW = (D.f[dirTSW])[ksw];//ktsw
 			real fTSE = (D.f[dirTSE])[ks];//ktse
@@ -227,7 +227,7 @@ extern "C" __global__ void LB_Kernel_BGK_Comp_SP_27(	real omega,
 			(D.f[dirBS])[kbs] = fTN;
 			(D.f[dirBN])[kb] = fTS;
 			(D.f[dirTS])[ks] = fBN;
-			(D.f[dirZERO])[k] = fZERO;
+			(D.f[dirREST])[k] = fZERO;
 			(D.f[dirTNE])[k] = fBSW;
 			(D.f[dirTSE])[ks] = fBNW;
 			(D.f[dirBNE])[kb] = fTSW;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGKPlus/BGKPlusCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGKPlus/BGKPlusCompSP27_Device.cu
index 25138592c..7e049436e 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGKPlus/BGKPlusCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/BGKPlus/BGKPlusCompSP27_Device.cu
@@ -55,7 +55,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Comp_SP_27(
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -85,7 +85,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Comp_SP_27(
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -144,7 +144,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Comp_SP_27(
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -810,7 +810,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Comp_SP_27(
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cascade/CascadeCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cascade/CascadeCompSP27_Device.cu
index b024c2627..a60faa191 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cascade/CascadeCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cascade/CascadeCompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Comp_SP_27(real omega,
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Comp_SP_27(real omega,
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Comp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS  ])[kbs];//[kbs  ];
 			real mfbca = (D.f[dirBN  ])[kb ];//[kbn  ];
 			real mfbac = (D.f[dirTS  ])[ks ];//[kts  ];
-			real mfbbb = (D.f[dirZERO])[k  ];//[kzero];
+			real mfbbb = (D.f[dirREST])[k  ];//[kzero];
 			real mfccc = (D.f[dirTNE ])[k  ];//[ktne ];
 			real mfaac = (D.f[dirTSW ])[ksw];//[ktsw ];
 			real mfcac = (D.f[dirTSE ])[ks ];//[ktse ];
@@ -750,7 +750,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Comp_SP_27(real omega,
 			(D.f[ dirBS  ])[kbs ] = mfbcc;
 			(D.f[ dirBN  ])[kb  ] = mfbac;
 			(D.f[ dirTS  ])[ks  ] = mfbca;
-			(D.f[ dirZERO])[k   ] = mfbbb;
+			(D.f[ dirREST])[k   ] = mfbbb;
 			(D.f[ dirTNE ])[k   ] = mfaaa;
 			(D.f[ dirTSE ])[ks  ] = mfaca;
 			(D.f[ dirBNE ])[kb  ] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cumulant/CumulantCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cumulant/CumulantCompSP27_Device.cu
index e76926b49..174b4a0b7 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cumulant/CumulantCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/Cumulant/CumulantCompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_Cum_Comp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_Cum_Comp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_Cum_Comp_SP_27(real omega,
 			real Sb = (D.f[dirBS])[kbs];// +  c1over54 ;
 			real Nb = (D.f[dirBN])[kbn];// +  c1over54 ;
 			real Sf = (D.f[dirTS])[kts];// +  c1over54 ;
-			real R = (D.f[dirZERO])[kzero];// +  c8over27 ;
+			real R = (D.f[dirREST])[kzero];// +  c8over27 ;
 			real Nef = (D.f[dirTNE])[ktne];// +  c1over216;
 			real Swf = (D.f[dirTSW])[ktsw];// +  c1over216;
 			real Sef = (D.f[dirTSE])[ktse];// +  c1over216;
@@ -891,7 +891,7 @@ extern "C" __global__ void LB_Kernel_Cum_Comp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;// -  c1over54 ;
 			(D.f[dirBN])[kbn] = mfbac;// -  c1over54 ;
 			(D.f[dirTS])[kts] = mfbca;// -  c1over54 ;
-			(D.f[dirZERO])[kzero] = mfbbb;// -  c8over27 ;
+			(D.f[dirREST])[kzero] = mfbbb;// -  c8over27 ;
 			(D.f[dirTNE])[ktne] = mfaaa;// -  c1over216;
 			(D.f[dirTSE])[ktse] = mfaca;// -  c1over216;
 			(D.f[dirBNE])[kbne] = mfaac;// -  c1over216;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantAll4/CumulantAll4CompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantAll4/CumulantAll4CompSP27_Device.cu
index 599892c2f..de0a2d05a 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantAll4/CumulantAll4CompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantAll4/CumulantAll4CompSP27_Device.cu
@@ -59,7 +59,7 @@ extern "C" __global__ void LB_Kernel_Cumulant_D3Q27All4(	real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -89,7 +89,7 @@ extern "C" __global__ void LB_Kernel_Cumulant_D3Q27All4(	real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -177,7 +177,7 @@ extern "C" __global__ void LB_Kernel_Cumulant_D3Q27All4(	real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1078,7 +1078,7 @@ extern "C" __global__ void LB_Kernel_Cumulant_D3Q27All4(	real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15/CumulantK15Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15/CumulantK15Comp_Device.cu
index 7349be584..b1818659e 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15/CumulantK15Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15/CumulantK15Comp_Device.cu
@@ -56,7 +56,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Comp(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -86,7 +86,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Comp(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -173,7 +173,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Comp(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1259,7 +1259,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Comp(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Bulk/CumulantK15BulkComp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Bulk/CumulantK15BulkComp_Device.cu
index 986e81639..5da7cdb44 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Bulk/CumulantK15BulkComp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Bulk/CumulantK15BulkComp_Device.cu
@@ -56,7 +56,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15BulkComp(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -86,7 +86,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15BulkComp(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -173,7 +173,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15BulkComp(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -929,7 +929,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15BulkComp(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Sponge/CumulantK15SpongeComp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Sponge/CumulantK15SpongeComp_Device.cu
index c8be85d2e..a8677a12d 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Sponge/CumulantK15SpongeComp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK15Sponge/CumulantK15SpongeComp_Device.cu
@@ -57,7 +57,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15SpongeComp(real omegaIn,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -87,7 +87,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15SpongeComp(real omegaIn,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -146,7 +146,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15SpongeComp(real omegaIn,
 			real mfbaa = (D.f[dirBS])[kbs];
 			real mfbca = (D.f[dirBN])[kb];
 			real mfbac = (D.f[dirTS])[ks];
-			real mfbbb = (D.f[dirZERO])[k];
+			real mfbbb = (D.f[dirREST])[k];
 			real mfccc = (D.f[dirTNE])[k];
 			real mfaac = (D.f[dirTSW])[ksw];
 			real mfcac = (D.f[dirTSE])[ks];
@@ -910,7 +910,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15SpongeComp(real omegaIn,
 			(D.f[dirBS])[kbs] = mfbcc;
 			(D.f[dirBN])[kb] = mfbac;
 			(D.f[dirTS])[ks] = mfbca;
-			(D.f[dirZERO])[k] = mfbbb;
+			(D.f[dirREST])[k] = mfbbb;
 			(D.f[dirTNE])[k] = mfaaa;
 			(D.f[dirTSE])[ks] = mfaca;
 			(D.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17/CumulantK17Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17/CumulantK17Comp_Device.cu
index 4c20e4655..a19cb2b16 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17/CumulantK17Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17/CumulantK17Comp_Device.cu
@@ -58,7 +58,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17Comp(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -88,7 +88,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17Comp(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -175,7 +175,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17Comp(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1024,7 +1024,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17Comp(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Bulk/CumulantK17BulkComp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Bulk/CumulantK17BulkComp_Device.cu
index 0e10a2d95..e5b9d4dbe 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Bulk/CumulantK17BulkComp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Bulk/CumulantK17BulkComp_Device.cu
@@ -57,7 +57,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17BulkComp(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -87,7 +87,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17BulkComp(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -146,7 +146,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17BulkComp(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -903,7 +903,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17BulkComp(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chim/CumulantK17CompChim_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chim/CumulantK17CompChim_Device.cu
index 9480365aa..0c39ba17a 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chim/CumulantK17CompChim_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chim/CumulantK17CompChim_Device.cu
@@ -105,7 +105,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChim(
             dist.f[dirBS]   = &distributions[dirBS * size_Mat];
             dist.f[dirBN]   = &distributions[dirBN * size_Mat];
             dist.f[dirTS]   = &distributions[dirTS * size_Mat];
-            dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+            dist.f[dirREST] = &distributions[dirREST * size_Mat];
             dist.f[dirTNE]  = &distributions[dirTNE * size_Mat];
             dist.f[dirTSW]  = &distributions[dirTSW * size_Mat];
             dist.f[dirTSE]  = &distributions[dirTSE * size_Mat];
@@ -133,7 +133,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChim(
             dist.f[dirTN]   = &distributions[dirBS * size_Mat];
             dist.f[dirTS]   = &distributions[dirBN * size_Mat];
             dist.f[dirBN]   = &distributions[dirTS * size_Mat];
-            dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+            dist.f[dirREST] = &distributions[dirREST * size_Mat];
             dist.f[dirBSW]  = &distributions[dirTNE * size_Mat];
             dist.f[dirBNE]  = &distributions[dirTSW * size_Mat];
             dist.f[dirBNW]  = &distributions[dirTSE * size_Mat];
@@ -173,7 +173,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChim(
         real mfbaa = (dist.f[dirBS])[kbs];
         real mfbca = (dist.f[dirBN])[kb];
         real mfbac = (dist.f[dirTS])[ks];
-        real mfbbb = (dist.f[dirZERO])[k];
+        real mfbbb = (dist.f[dirREST])[k];
         real mfccc = (dist.f[dirTNE])[k];
         real mfaac = (dist.f[dirTSW])[ksw];
         real mfcac = (dist.f[dirTSE])[ks];
@@ -640,7 +640,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChim(
         (dist.f[dirBS])[kbs]   = mfbcc;
         (dist.f[dirBN])[kb]    = mfbac;
         (dist.f[dirTS])[ks]    = mfbca;
-        (dist.f[dirZERO])[k]   = mfbbb;
+        (dist.f[dirREST])[k]   = mfbbb;
         (dist.f[dirTNE])[k]    = mfaaa;
         (dist.f[dirTSE])[ks]   = mfaca;
         (dist.f[dirBNE])[kb]   = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chimStream/CumulantK17CompChimStreamDevice.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chimStream/CumulantK17CompChimStreamDevice.cu
index f57fd9dd9..3408471a3 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chimStream/CumulantK17CompChimStreamDevice.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17chimStream/CumulantK17CompChimStreamDevice.cu
@@ -104,7 +104,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChimStream(
             dist.f[dirBS]   = &distributions[dirBS * size_Mat];
             dist.f[dirBN]   = &distributions[dirBN * size_Mat];
             dist.f[dirTS]   = &distributions[dirTS * size_Mat];
-            dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+            dist.f[dirREST] = &distributions[dirREST * size_Mat];
             dist.f[dirTNE]  = &distributions[dirTNE * size_Mat];
             dist.f[dirTSW]  = &distributions[dirTSW * size_Mat];
             dist.f[dirTSE]  = &distributions[dirTSE * size_Mat];
@@ -132,7 +132,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChimStream(
             dist.f[dirTN]   = &distributions[dirBS * size_Mat];
             dist.f[dirTS]   = &distributions[dirBN * size_Mat];
             dist.f[dirBN]   = &distributions[dirTS * size_Mat];
-            dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+            dist.f[dirREST] = &distributions[dirREST * size_Mat];
             dist.f[dirBSW]  = &distributions[dirTNE * size_Mat];
             dist.f[dirBNE]  = &distributions[dirTSW * size_Mat];
             dist.f[dirBNW]  = &distributions[dirTSE * size_Mat];
@@ -172,7 +172,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChimStream(
         real mfbaa = (dist.f[dirBS])[kbs];
         real mfbca = (dist.f[dirBN])[kb];
         real mfbac = (dist.f[dirTS])[ks];
-        real mfbbb = (dist.f[dirZERO])[k];
+        real mfbbb = (dist.f[dirREST])[k];
         real mfccc = (dist.f[dirTNE])[k];
         real mfaac = (dist.f[dirTSW])[ksw];
         real mfcac = (dist.f[dirTSE])[ks];
@@ -626,7 +626,7 @@ extern "C" __global__ void LB_Kernel_CumulantK17CompChimStream(
         (dist.f[dirBS])[kbs]   = mfbcc;
         (dist.f[dirBN])[kb]    = mfbac;
         (dist.f[dirTS])[ks]    = mfbca;
-        (dist.f[dirZERO])[k]   = mfbbb;
+        (dist.f[dirREST])[k]   = mfbbb;
         (dist.f[dirTNE])[k]    = mfaaa;
         (dist.f[dirTSE])[ks]   = mfaca;
         (dist.f[dirBNE])[kb]   = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK18/CumulantK18Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK18/CumulantK18Comp_Device.cu
index 8d5b10b1e..226e7ba12 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK18/CumulantK18Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK18/CumulantK18Comp_Device.cu
@@ -59,7 +59,7 @@ extern "C" __global__ void LB_Kernel_CumulantK18Comp(
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -89,7 +89,7 @@ extern "C" __global__ void LB_Kernel_CumulantK18Comp(
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -179,7 +179,7 @@ extern "C" __global__ void LB_Kernel_CumulantK18Comp(
 			real mfbaa = (D.f[dirBS])[kbs];
 			real mfbca = (D.f[dirBN])[kb];
 			real mfbac = (D.f[dirTS])[ks];
-			real mfbbb = (D.f[dirZERO])[k];
+			real mfbbb = (D.f[dirREST])[k];
 			real mfccc = (D.f[dirTNE])[k];
 			real mfaac = (D.f[dirTSW])[ksw];
 			real mfcac = (D.f[dirTSE])[ks];
@@ -932,7 +932,7 @@ extern "C" __global__ void LB_Kernel_CumulantK18Comp(
 			(D.f[dirBS])[kbs] = mfbcc;
 			(D.f[dirBN])[kb] = mfbac;
 			(D.f[dirTS])[ks] = mfbca;
-			(D.f[dirZERO])[k] = mfbbb;
+			(D.f[dirREST])[k] = mfbbb;
 			(D.f[dirTNE])[k] = mfaaa;
 			(D.f[dirTSE])[ks] = mfaca;
 			(D.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK20/CumulantK20Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK20/CumulantK20Comp_Device.cu
index 959a9e6d7..b86e5dab5 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK20/CumulantK20Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK20/CumulantK20Comp_Device.cu
@@ -59,7 +59,7 @@ extern "C" __global__ void LB_Kernel_CumulantK20Comp(
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -89,7 +89,7 @@ extern "C" __global__ void LB_Kernel_CumulantK20Comp(
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -178,7 +178,7 @@ extern "C" __global__ void LB_Kernel_CumulantK20Comp(
 			real mfbaa = (D.f[dirBS])[kbs];
 			real mfbca = (D.f[dirBN])[kb];
 			real mfbac = (D.f[dirTS])[ks];
-			real mfbbb = (D.f[dirZERO])[k];
+			real mfbbb = (D.f[dirREST])[k];
 			real mfccc = (D.f[dirTNE])[k];
 			real mfaac = (D.f[dirTSW])[ksw];
 			real mfcac = (D.f[dirTSE])[ks];
@@ -936,7 +936,7 @@ extern "C" __global__ void LB_Kernel_CumulantK20Comp(
 			(D.f[dirBS])[kbs] = mfbcc;
 			(D.f[dirBN])[kb] = mfbac;
 			(D.f[dirTS])[ks] = mfbca;
-			(D.f[dirZERO])[k] = mfbbb;
+			(D.f[dirREST])[k] = mfbbb;
 			(D.f[dirTNE])[k] = mfaaa;
 			(D.f[dirTSE])[ks] = mfaca;
 			(D.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/MRT/MRTCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/MRT/MRTCompSP27_Device.cu
index 9bde8228f..785f9c75e 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/MRT/MRTCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/MRT/MRTCompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_MRT_Comp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_MRT_Comp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_MRT_Comp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -756,7 +756,7 @@ extern "C" __global__ void LB_Kernel_MRT_Comp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGK/BGKIncompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGK/BGKIncompSP27_Device.cu
index 138b17170..6b744f814 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGK/BGKIncompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGK/BGKIncompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_BGK_Incomp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_BGK_Incomp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_BGK_Incomp_SP_27(real omega,
 			real fBS = (D.f[dirBS])[kbs];
 			real fBN = (D.f[dirBN])[kb];//kbn
 			real fTS = (D.f[dirTS])[ks];//kts
-			real fZERO = (D.f[dirZERO])[k];//kzero
+			real fZERO = (D.f[dirREST])[k];//kzero
 			real fTNE = (D.f[dirTNE])[k];//ktne
 			real fTSW = (D.f[dirTSW])[ksw];//ktsw
 			real fTSE = (D.f[dirTSE])[ks];//ktse
@@ -223,7 +223,7 @@ extern "C" __global__ void LB_Kernel_BGK_Incomp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = fTN;
 			(D.f[dirBN])[kb] = fTS;
 			(D.f[dirTS])[ks] = fBN;
-			(D.f[dirZERO])[k] = fZERO;
+			(D.f[dirREST])[k] = fZERO;
 			(D.f[dirTNE])[k] = fBSW;
 			(D.f[dirTSE])[ks] = fBNW;
 			(D.f[dirBNE])[kb] = fTSW;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGKPlus/BGKPlusIncompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGKPlus/BGKPlusIncompSP27_Device.cu
index deb8d94dc..20714d4b1 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGKPlus/BGKPlusIncompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/BGKPlus/BGKPlusIncompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Incomp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Incomp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Incomp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -741,7 +741,7 @@ extern "C" __global__ void LB_Kernel_BGK_Plus_Incomp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cascade/CascadeIncompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cascade/CascadeIncompSP27_Device.cu
index 025729760..8dc7550ed 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cascade/CascadeIncompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cascade/CascadeIncompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Incomp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Incomp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Incomp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -745,7 +745,7 @@ extern "C" __global__ void LB_Kernel_Cascade_Incomp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cumulant1hSP27/Cumulant1hIncompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cumulant1hSP27/Cumulant1hIncompSP27_Device.cu
index 84bf396c4..e5abf62f2 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cumulant1hSP27/Cumulant1hIncompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/Cumulant1hSP27/Cumulant1hIncompSP27_Device.cu
@@ -59,7 +59,7 @@ extern "C" __global__ void LB_Kernel_Cum_1h_Incomp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -89,7 +89,7 @@ extern "C" __global__ void LB_Kernel_Cum_1h_Incomp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -176,7 +176,7 @@ extern "C" __global__ void LB_Kernel_Cum_1h_Incomp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1178,7 +1178,7 @@ extern "C" __global__ void LB_Kernel_Cum_1h_Incomp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantIsoSP27/CumulantIsoIncompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantIsoSP27/CumulantIsoIncompSP27_Device.cu
index 753bb0be7..48de59c82 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantIsoSP27/CumulantIsoIncompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantIsoSP27/CumulantIsoIncompSP27_Device.cu
@@ -57,7 +57,7 @@ extern "C" __global__ void LB_Kernel_Cum_IsoTest_Incomp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -87,7 +87,7 @@ extern "C" __global__ void LB_Kernel_Cum_IsoTest_Incomp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -146,7 +146,7 @@ extern "C" __global__ void LB_Kernel_Cum_IsoTest_Incomp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -990,7 +990,7 @@ extern "C" __global__ void LB_Kernel_Cum_IsoTest_Incomp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantK15/CumulantK15Incomp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantK15/CumulantK15Incomp_Device.cu
index 9c8ca3a68..17df4e3a8 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantK15/CumulantK15Incomp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/CumulantK15/CumulantK15Incomp_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Incomp(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Incomp(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -171,7 +171,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Incomp(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -1223,7 +1223,7 @@ extern "C" __global__ void LB_Kernel_CumulantK15Incomp(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/MRT/MRTIncompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/MRT/MRTIncompSP27_Device.cu
index be2b2333a..54b6840d6 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/MRT/MRTIncompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Incompressible/MRT/MRTIncompSP27_Device.cu
@@ -54,7 +54,7 @@ extern "C" __global__ void LB_Kernel_MRT_Incomp_SP_27(real omega,
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -84,7 +84,7 @@ extern "C" __global__ void LB_Kernel_MRT_Incomp_SP_27(real omega,
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -143,7 +143,7 @@ extern "C" __global__ void LB_Kernel_MRT_Incomp_SP_27(real omega,
 			real mfbaa = (D.f[dirBS])[kbs];//[kbs  ];// +  c1over54 ;(D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN])[kb];//[kbn  ];// +  c1over54 ;(D.f[dirBN  ])[kb ];//kbn
 			real mfbac = (D.f[dirTS])[ks];//[kts  ];// +  c1over54 ;(D.f[dirTS  ])[ks ];//kts
-			real mfbbb = (D.f[dirZERO])[k];//[kzero];// +  c8over27 ;(D.f[dirZERO])[k  ];//kzero
+			real mfbbb = (D.f[dirREST])[k];//[kzero];// +  c8over27 ;(D.f[dirREST])[k  ];//kzero
 			real mfccc = (D.f[dirTNE])[k];//[ktne ];// +  c1over216;(D.f[dirTNE ])[k  ];//ktne
 			real mfaac = (D.f[dirTSW])[ksw];//[ktsw ];// +  c1over216;(D.f[dirTSW ])[ksw];//ktsw
 			real mfcac = (D.f[dirTSE])[ks];//[ktse ];// +  c1over216;(D.f[dirTSE ])[ks ];//ktse
@@ -748,7 +748,7 @@ extern "C" __global__ void LB_Kernel_MRT_Incomp_SP_27(real omega,
 			(D.f[dirBS])[kbs] = mfbcc;//(D.f[ dirBS  ])[kbs  ] = mfbcc;// -  c1over54 ;	 (D.f[ dirBS  ])[kbs ]
 			(D.f[dirBN])[kb] = mfbac;//(D.f[ dirBN  ])[kbn  ] = mfbac;// -  c1over54 ;	 (D.f[ dirBN  ])[kb  ]
 			(D.f[dirTS])[ks] = mfbca;//(D.f[ dirTS  ])[kts  ] = mfbca;// -  c1over54 ;	 (D.f[ dirTS  ])[ks  ]
-			(D.f[dirZERO])[k] = mfbbb;//(D.f[ dirZERO])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirZERO])[k   ]
+			(D.f[dirREST])[k] = mfbbb;//(D.f[ dirREST])[kzero] = mfbbb;// -  c8over27 ;	 (D.f[ dirREST])[k   ]
 			(D.f[dirTNE])[k] = mfaaa;//(D.f[ dirTNE ])[ktne ] = mfaaa;// -  c1over216;	 (D.f[ dirTNE ])[k   ]
 			(D.f[dirTSE])[ks] = mfaca;//(D.f[ dirTSE ])[ktse ] = mfaca;// -  c1over216;	 (D.f[ dirTSE ])[ks  ]
 			(D.f[dirBNE])[kb] = mfaac;//(D.f[ dirBNE ])[kbne ] = mfaac;// -  c1over216;	 (D.f[ dirBNE ])[kb  ]
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/PorousMediaKernels/FluidFlow/Compressible/CumulantOne/PMCumulantOneCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/PorousMediaKernels/FluidFlow/Compressible/CumulantOne/PMCumulantOneCompSP27_Device.cu
index 2f42b7172..22b175307 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/PorousMediaKernels/FluidFlow/Compressible/CumulantOne/PMCumulantOneCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/PorousMediaKernels/FluidFlow/Compressible/CumulantOne/PMCumulantOneCompSP27_Device.cu
@@ -41,7 +41,7 @@ extern "C" __global__ void LB_Kernel_PM_Cum_One_Comp_SP_27(real omega,
 		D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 		D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 		D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-		D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+		D.f[dirREST] = &DDStart[dirREST*size_Mat];
 		D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 		D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 		D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -71,7 +71,7 @@ extern "C" __global__ void LB_Kernel_PM_Cum_One_Comp_SP_27(real omega,
 		D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 		D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 		D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-		D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+		D.f[dirREST] = &DDStart[dirREST*size_Mat];
 		D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 		D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 		D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -124,7 +124,7 @@ extern "C" __global__ void LB_Kernel_PM_Cum_One_Comp_SP_27(real omega,
 		real mfbaa = (D.f[dirBS])[kbs];
 		real mfbca = (D.f[dirBN])[kb];
 		real mfbac = (D.f[dirTS])[ks];
-		real mfbbb = (D.f[dirZERO])[k];
+		real mfbbb = (D.f[dirREST])[k];
 		real mfccc = (D.f[dirTNE])[k];
 		real mfaac = (D.f[dirTSW])[ksw];
 		real mfcac = (D.f[dirTSE])[ks];
@@ -921,7 +921,7 @@ extern "C" __global__ void LB_Kernel_PM_Cum_One_Comp_SP_27(real omega,
 		(D.f[dirBS])[kbs] = mfbcc;
 		(D.f[dirBN])[kb] = mfbac;
 		(D.f[dirTS])[ks] = mfbca;
-		(D.f[dirZERO])[k] = mfbbb;
+		(D.f[dirREST])[k] = mfbbb;
 		(D.f[dirTNE])[k] = mfaaa;
 		(D.f[dirTSE])[ks] = mfaca;
 		(D.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/TurbulentViscosityKernels/FluidFlow/Compressible/CumulantK17chim/TurbulentViscosityCumulantK17CompChim_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/TurbulentViscosityKernels/FluidFlow/Compressible/CumulantK17chim/TurbulentViscosityCumulantK17CompChim_Device.cu
index f2f02c6df..d43be2a9d 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/TurbulentViscosityKernels/FluidFlow/Compressible/CumulantK17chim/TurbulentViscosityCumulantK17CompChim_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/TurbulentViscosityKernels/FluidFlow/Compressible/CumulantK17chim/TurbulentViscosityCumulantK17CompChim_Device.cu
@@ -119,7 +119,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
             dist.f[dirBS]   = &distributions[dirBS * size_Mat];
             dist.f[dirBN]   = &distributions[dirBN * size_Mat];
             dist.f[dirTS]   = &distributions[dirTS * size_Mat];
-            dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+            dist.f[dirREST] = &distributions[dirREST * size_Mat];
             dist.f[dirTNE]  = &distributions[dirTNE * size_Mat];
             dist.f[dirTSW]  = &distributions[dirTSW * size_Mat];
             dist.f[dirTSE]  = &distributions[dirTSE * size_Mat];
@@ -147,7 +147,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
             dist.f[dirTN]   = &distributions[dirBS * size_Mat];
             dist.f[dirTS]   = &distributions[dirBN * size_Mat];
             dist.f[dirBN]   = &distributions[dirTS * size_Mat];
-            dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+            dist.f[dirREST] = &distributions[dirREST * size_Mat];
             dist.f[dirBSW]  = &distributions[dirTNE * size_Mat];
             dist.f[dirBNE]  = &distributions[dirTSW * size_Mat];
             dist.f[dirBNW]  = &distributions[dirTSE * size_Mat];
@@ -187,7 +187,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
         real mfbaa = (dist.f[dirBS])[kbs];
         real mfbca = (dist.f[dirBN])[kb];
         real mfbac = (dist.f[dirTS])[ks];
-        real mfbbb = (dist.f[dirZERO])[k];
+        real mfbbb = (dist.f[dirREST])[k];
         real mfccc = (dist.f[dirTNE])[k];
         real mfaac = (dist.f[dirTSW])[ksw];
         real mfcac = (dist.f[dirTSE])[ks];
@@ -711,7 +711,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
         (dist.f[dirBS])[kbs]   = mfbcc;
         (dist.f[dirBN])[kb]    = mfbac;
         (dist.f[dirTS])[ks]    = mfbca;
-        (dist.f[dirZERO])[k]   = mfbbb;
+        (dist.f[dirREST])[k]   = mfbbb;
         (dist.f[dirTNE])[k]    = mfaaa;
         (dist.f[dirTSE])[ks]   = mfaca;
         (dist.f[dirBNE])[kb]   = mfaac;
@@ -861,7 +861,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //             dist.f[dirBS]   = &distributions[dirBS * size_Mat];
 //             dist.f[dirBN]   = &distributions[dirBN * size_Mat];
 //             dist.f[dirTS]   = &distributions[dirTS * size_Mat];
-//             dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+//             dist.f[dirREST] = &distributions[dirREST * size_Mat];
 //             dist.f[dirTNE]  = &distributions[dirTNE * size_Mat];
 //             dist.f[dirTSW]  = &distributions[dirTSW * size_Mat];
 //             dist.f[dirTSE]  = &distributions[dirTSE * size_Mat];
@@ -889,7 +889,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //             dist.f[dirTN]   = &distributions[dirBS * size_Mat];
 //             dist.f[dirTS]   = &distributions[dirBN * size_Mat];
 //             dist.f[dirBN]   = &distributions[dirTS * size_Mat];
-//             dist.f[dirZERO] = &distributions[dirZERO * size_Mat];
+//             dist.f[dirREST] = &distributions[dirREST * size_Mat];
 //             dist.f[dirBSW]  = &distributions[dirTNE * size_Mat];
 //             dist.f[dirBNE]  = &distributions[dirTSW * size_Mat];
 //             dist.f[dirBNW]  = &distributions[dirTSE * size_Mat];
@@ -930,7 +930,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //         // real mfbaa = distr_wrapper.distribution.f[dirBS];
 //         // real mfbca = distr_wrapper.distribution.f[dirBN];
 //         // real mfbac = distr_wrapper.distribution.f[dirTS];
-//         // real mfbbb = distr_wrapper.distribution.f[dirZERO];
+//         // real mfbbb = distr_wrapper.distribution.f[dirREST];
 //         // real mfccc = distr_wrapper.distribution.f[dirTNE];
 //         // real mfaac = distr_wrapper.distribution.f[dirTSW];
 //         // real mfcac = distr_wrapper.distribution.f[dirTSE];
@@ -959,7 +959,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //         real mfbaa = (dist.f[dirBS])[kbs];
 //         real mfbca = (dist.f[dirBN])[kb];
 //         real mfbac = (dist.f[dirTS])[ks];
-//         real mfbbb = (dist.f[dirZERO])[k];
+//         real mfbbb = (dist.f[dirREST])[k];
 //         real mfccc = (dist.f[dirTNE])[k];
 //         real mfaac = (dist.f[dirTSW])[ksw];
 //         real mfcac = (dist.f[dirTSE])[ks];
@@ -1491,7 +1491,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //         distr_wrapper.distribution.f[dirBS]     = mfbcc;
 //         distr_wrapper.distribution.f[dirBN]     = mfbac;
 //         distr_wrapper.distribution.f[dirTS]     = mfbca;
-//         distr_wrapper.distribution.f[dirZERO]   = mfbbb;
+//         distr_wrapper.distribution.f[dirREST]   = mfbbb;
 //         distr_wrapper.distribution.f[dirTNE]    = mfaaa;
 //         distr_wrapper.distribution.f[dirTSW]    = mfaca;
 //         distr_wrapper.distribution.f[dirTSE]    = mfaac;
@@ -1523,7 +1523,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //                                                 (dist.f[dirBS])[kbs]  ,
 //                                                 (dist.f[dirBN])[kb]   ,
 //                                                 (dist.f[dirTS])[ks]   ,
-//                                                 (dist.f[dirZERO])[k]  ,
+//                                                 (dist.f[dirREST])[k]  ,
 //                                                 (dist.f[dirTNE])[k]   ,
 //                                                 (dist.f[dirTSE])[ks]  ,
 //                                                 (dist.f[dirBNE])[kb]  ,
@@ -1552,7 +1552,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //         (dist.f[dirBS])[kbs]   = mfbcc;
 //         (dist.f[dirBN])[kb]    = mfbac;
 //         (dist.f[dirTS])[ks]    = mfbca;
-//         (dist.f[dirZERO])[k]   = mfbbb;
+//         (dist.f[dirREST])[k]   = mfbbb;
 //         (dist.f[dirTNE])[k]    = mfaaa;
 //         (dist.f[dirTSE])[ks]   = mfaca;
 //         (dist.f[dirBNE])[kb]   = mfaac;
@@ -1583,7 +1583,7 @@ extern "C" __global__ void LB_Kernel_TurbulentViscosityCumulantK17CompChim(
 //                                                 (dist.f[dirBS])[kbs]  ,
 //                                                 (dist.f[dirBN])[kb]   ,
 //                                                 (dist.f[dirTS])[ks]   ,
-//                                                 (dist.f[dirZERO])[k]  ,
+//                                                 (dist.f[dirREST])[k]  ,
 //                                                 (dist.f[dirTNE])[k]   ,
 //                                                 (dist.f[dirTSE])[ks]  ,
 //                                                 (dist.f[dirBNE])[kb]  ,
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15/WaleCumulantK15Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15/WaleCumulantK15Comp_Device.cu
index 23c4d72d2..2ed6bcbb3 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15/WaleCumulantK15Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15/WaleCumulantK15Comp_Device.cu
@@ -63,7 +63,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK15Comp(
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -93,7 +93,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK15Comp(
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -153,7 +153,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK15Comp(
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
@@ -1197,7 +1197,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK15Comp(
 			(D.f[ dirBS  ])[kbs ] = mfbcc;
 			(D.f[ dirBN  ])[kb  ] = mfbac;
 			(D.f[ dirTS  ])[ks  ] = mfbca;
-			(D.f[ dirZERO])[k   ] = mfbbb;
+			(D.f[ dirREST])[k   ] = mfbbb;
 			(D.f[ dirTNE ])[k   ] = mfaaa;
 			(D.f[ dirTSE ])[ks  ] = mfaca;
 			(D.f[ dirBNE ])[kb  ] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15BySoniMalav/WaleBySoniMalavCumulantK15Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15BySoniMalav/WaleBySoniMalavCumulantK15Comp_Device.cu
index a791e1114..9bef300da 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15BySoniMalav/WaleBySoniMalavCumulantK15Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK15BySoniMalav/WaleBySoniMalavCumulantK15Comp_Device.cu
@@ -62,7 +62,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalavCumulantK15Comp(
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -92,7 +92,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalavCumulantK15Comp(
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -132,7 +132,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalavCumulantK15Comp(
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
@@ -1021,7 +1021,7 @@ extern "C" __global__ void LB_Kernel_WaleBySoniMalavCumulantK15Comp(
 			(D.f[ dirBS  ])[kbs ] = mfbcc;
 			(D.f[ dirBN  ])[kb  ] = mfbac;
 			(D.f[ dirTS  ])[ks  ] = mfbca;
-			(D.f[ dirZERO])[k   ] = mfbbb;
+			(D.f[ dirREST])[k   ] = mfbbb;
 			(D.f[ dirTNE ])[k   ] = mfaaa;
 			(D.f[ dirTSE ])[ks  ] = mfaca;
 			(D.f[ dirBNE ])[kb  ] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17/WaleCumulantK17Comp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17/WaleCumulantK17Comp_Device.cu
index 0ff953e26..e8d4ba303 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17/WaleCumulantK17Comp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17/WaleCumulantK17Comp_Device.cu
@@ -64,7 +64,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17Comp(
 				D.f[dirBS  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE ] = &DDStart[dirTSE *size_Mat];
@@ -94,7 +94,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17Comp(
 				D.f[dirTN  ] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS  ] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN  ] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW ] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE ] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW ] = &DDStart[dirTSE *size_Mat];
@@ -154,7 +154,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17Comp(
 			real mfbaa = (D.f[dirBS  ])[kbs];
 			real mfbca = (D.f[dirBN  ])[kb ];
 			real mfbac = (D.f[dirTS  ])[ks ];
-			real mfbbb = (D.f[dirZERO])[k  ];
+			real mfbbb = (D.f[dirREST])[k  ];
 			real mfccc = (D.f[dirTNE ])[k  ];
 			real mfaac = (D.f[dirTSW ])[ksw];
 			real mfcac = (D.f[dirTSE ])[ks ];
@@ -1159,7 +1159,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17Comp(
 			(D.f[ dirBS  ])[kbs ] = mfbcc;
 			(D.f[ dirBN  ])[kb  ] = mfbac;
 			(D.f[ dirTS  ])[ks  ] = mfbca;
-			(D.f[ dirZERO])[k   ] = mfbbb;
+			(D.f[ dirREST])[k   ] = mfbbb;
 			(D.f[ dirTNE ])[k   ] = mfaaa;
 			(D.f[ dirTSE ])[ks  ] = mfaca;
 			(D.f[ dirBNE ])[kb  ] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17Debug/WaleCumulantK17DebugComp_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17Debug/WaleCumulantK17DebugComp_Device.cu
index 9d4efb2ab..aeadbdada 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17Debug/WaleCumulantK17DebugComp_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/WaleKernels/FluidFlow/Compressible/CumulantK17Debug/WaleCumulantK17DebugComp_Device.cu
@@ -74,7 +74,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17DebugComp(
 				D.f[dirBS] = &DDStart[dirBS  *size_Mat];
 				D.f[dirBN] = &DDStart[dirBN  *size_Mat];
 				D.f[dirTS] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirTNE] = &DDStart[dirTNE *size_Mat];
 				D.f[dirTSW] = &DDStart[dirTSW *size_Mat];
 				D.f[dirTSE] = &DDStart[dirTSE *size_Mat];
@@ -104,7 +104,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17DebugComp(
 				D.f[dirTN] = &DDStart[dirBS  *size_Mat];
 				D.f[dirTS] = &DDStart[dirBN  *size_Mat];
 				D.f[dirBN] = &DDStart[dirTS  *size_Mat];
-				D.f[dirZERO] = &DDStart[dirZERO*size_Mat];
+				D.f[dirREST] = &DDStart[dirREST*size_Mat];
 				D.f[dirBSW] = &DDStart[dirTNE *size_Mat];
 				D.f[dirBNE] = &DDStart[dirTSW *size_Mat];
 				D.f[dirBNW] = &DDStart[dirTSE *size_Mat];
@@ -164,7 +164,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17DebugComp(
 			real mfbaa = (D.f[dirBS])[kbs];
 			real mfbca = (D.f[dirBN])[kb];
 			real mfbac = (D.f[dirTS])[ks];
-			real mfbbb = (D.f[dirZERO])[k];
+			real mfbbb = (D.f[dirREST])[k];
 			real mfccc = (D.f[dirTNE])[k];
 			real mfaac = (D.f[dirTSW])[ksw];
 			real mfcac = (D.f[dirTSE])[ks];
@@ -1175,7 +1175,7 @@ extern "C" __global__ void LB_Kernel_WaleCumulantK17DebugComp(
 			(D.f[dirBS])[kbs] = mfbcc;
 			(D.f[dirBN])[kb] = mfbac;
 			(D.f[dirTS])[ks] = mfbca;
-			(D.f[dirZERO])[k] = mfbbb;
+			(D.f[dirREST])[k] = mfbbb;
 			(D.f[dirTNE])[k] = mfaaa;
 			(D.f[dirTSE])[ks] = mfaca;
 			(D.f[dirBNE])[kb] = mfaac;
diff --git a/src/gpu/VirtualFluids_GPU/LBM/D3Q27.h b/src/gpu/VirtualFluids_GPU/LBM/D3Q27.h
index dd78ba405..f65faba8f 100644
--- a/src/gpu/VirtualFluids_GPU/LBM/D3Q27.h
+++ b/src/gpu/VirtualFluids_GPU/LBM/D3Q27.h
@@ -34,7 +34,7 @@
 #define dirBSE  24
 #define dirBSW  25
 
-#define dirZERO 26
+// #define dirZERO 26
 #define dirREST 26
 
 #endif
diff --git a/src/gpu/VirtualFluids_GPU/Output/UnstructuredGridWriter.hpp b/src/gpu/VirtualFluids_GPU/Output/UnstructuredGridWriter.hpp
index a5441e15a..cd13d9bce 100644
--- a/src/gpu/VirtualFluids_GPU/Output/UnstructuredGridWriter.hpp
+++ b/src/gpu/VirtualFluids_GPU/Output/UnstructuredGridWriter.hpp
@@ -2353,7 +2353,7 @@ namespace UnstructuredGridWriter
 					case dirBNW: wallX1 = nodeX1 - q*dx; wallX2 = nodeX2 + q*dx; wallX3 = nodeX3 - q*dx; break;
 					case dirBSE: wallX1 = nodeX1 + q*dx; wallX2 = nodeX2 - q*dx; wallX3 = nodeX3 - q*dx; break;
 					case dirTNW: wallX1 = nodeX1 - q*dx; wallX2 = nodeX2 + q*dx; wallX3 = nodeX3 + q*dx; break;
-					case dirZERO:wallX1 = nodeX1;        wallX2 = nodeX2;		 wallX3 = nodeX3;        break;
+					case dirREST:wallX1 = nodeX1;        wallX2 = nodeX2;		 wallX3 = nodeX3;        break;
 					default: throw UbException(UB_EXARGS, "unknown direction");
 				}
 				//////////////////////////////////////////////////////////////////////////
@@ -2458,7 +2458,7 @@ namespace UnstructuredGridWriter
 					case dirBNW: wallX1 = nodeX1 - q*dx; wallX2 = nodeX2 + q*dx; wallX3 = nodeX3 - q*dx; break;
 					case dirBSE: wallX1 = nodeX1 + q*dx; wallX2 = nodeX2 - q*dx; wallX3 = nodeX3 - q*dx; break;
 					case dirTNW: wallX1 = nodeX1 - q*dx; wallX2 = nodeX2 + q*dx; wallX3 = nodeX3 + q*dx; break;
-					case dirZERO:wallX1 = nodeX1;        wallX2 = nodeX2;		 wallX3 = nodeX3;        break;
+					case dirREST:wallX1 = nodeX1;        wallX2 = nodeX2;		 wallX3 = nodeX3;        break;
 					default: throw UbException(UB_EXARGS, "unknown direction");
 				}
 				//////////////////////////////////////////////////////////////////////////
@@ -2563,7 +2563,7 @@ namespace UnstructuredGridWriter
 					case dirBNW: wallX1 = nodeX1 - q*dx; wallX2 = nodeX2 + q*dx; wallX3 = nodeX3 - q*dx; break;
 					case dirBSE: wallX1 = nodeX1 + q*dx; wallX2 = nodeX2 - q*dx; wallX3 = nodeX3 - q*dx; break;
 					case dirTNW: wallX1 = nodeX1 - q*dx; wallX2 = nodeX2 + q*dx; wallX3 = nodeX3 + q*dx; break;
-					case dirZERO:wallX1 = nodeX1;        wallX2 = nodeX2;		 wallX3 = nodeX3;        break;
+					case dirREST:wallX1 = nodeX1;        wallX2 = nodeX2;		 wallX3 = nodeX3;        break;
 					default: throw UbException(UB_EXARGS, "unknown direction");
 				}
 				//////////////////////////////////////////////////////////////////////////
diff --git a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompAD27/InitCompAD27_Device.cu b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompAD27/InitCompAD27_Device.cu
index dfe1ccd23..6e3069c33 100644
--- a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompAD27/InitCompAD27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompAD27/InitCompAD27_Device.cu
@@ -57,7 +57,7 @@ extern "C" __global__ void LB_Init_Comp_AD_27(unsigned int* neighborX,
 				D27.f[dirBS] = &DD27[dirBS  *size_Mat];
 				D27.f[dirBN] = &DD27[dirBN  *size_Mat];
 				D27.f[dirTS] = &DD27[dirTS  *size_Mat];
-				D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+				D27.f[dirREST] = &DD27[dirREST*size_Mat];
 				D27.f[dirTNE] = &DD27[dirTNE *size_Mat];
 				D27.f[dirTSW] = &DD27[dirTSW *size_Mat];
 				D27.f[dirTSE] = &DD27[dirTSE *size_Mat];
@@ -87,7 +87,7 @@ extern "C" __global__ void LB_Init_Comp_AD_27(unsigned int* neighborX,
 				D27.f[dirTN] = &DD27[dirBS  *size_Mat];
 				D27.f[dirTS] = &DD27[dirBN  *size_Mat];
 				D27.f[dirBN] = &DD27[dirTS  *size_Mat];
-				D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+				D27.f[dirREST] = &DD27[dirREST*size_Mat];
 				D27.f[dirBSW] = &DD27[dirTNE *size_Mat];
 				D27.f[dirBNE] = &DD27[dirTSW *size_Mat];
 				D27.f[dirBNW] = &DD27[dirTSE *size_Mat];
@@ -166,7 +166,7 @@ extern "C" __global__ void LB_Init_Comp_AD_27(unsigned int* neighborX,
 			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 			real cu_sq = c3o2*(vx1*vx1 + vx2*vx2 + vx3*vx3);
 
-			(D27.f[dirZERO])[kzero] = c8o27* ConcD*(c1o1 - cu_sq);
+			(D27.f[dirREST])[kzero] = c8o27* ConcD*(c1o1 - cu_sq);
 			(D27.f[dirE])[ke] = c2o27* ConcD*(c1o1 + c3o1*(vx1)+c9o2*(vx1)*(vx1)-cu_sq);
 			(D27.f[dirW])[kw] = c2o27* ConcD*(c1o1 + c3o1*(-vx1) + c9o2*(-vx1)*(-vx1) - cu_sq);
 			(D27.f[dirN])[kn] = c2o27* ConcD*(c1o1 + c3o1*(vx2)+c9o2*(vx2)*(vx2)-cu_sq);
diff --git a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompSP27/InitCompSP27_Device.cu b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompSP27/InitCompSP27_Device.cu
index a411f5be0..b7e0549d8 100644
--- a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompSP27/InitCompSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitCompSP27/InitCompSP27_Device.cu
@@ -59,7 +59,7 @@ extern "C" __global__ void LB_Init_Comp_SP_27(unsigned int* neighborX,
             D.f[dirBS  ] = &DD[dirBS  *size_Mat];
             D.f[dirBN  ] = &DD[dirBN  *size_Mat];
             D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-            D.f[dirZERO] = &DD[dirZERO*size_Mat];
+            D.f[dirREST] = &DD[dirREST*size_Mat];
             D.f[dirTNE ] = &DD[dirTNE *size_Mat];
             D.f[dirTSW ] = &DD[dirTSW *size_Mat];
             D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -89,7 +89,7 @@ extern "C" __global__ void LB_Init_Comp_SP_27(unsigned int* neighborX,
             D.f[dirTN  ] = &DD[dirBS  *size_Mat];
             D.f[dirTS  ] = &DD[dirBN  *size_Mat];
             D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-            D.f[dirZERO] = &DD[dirZERO*size_Mat];
+            D.f[dirREST] = &DD[dirREST*size_Mat];
             D.f[dirBSW ] = &DD[dirTNE *size_Mat];
             D.f[dirBNE ] = &DD[dirTSW *size_Mat];
             D.f[dirBNW ] = &DD[dirTSE *size_Mat];
@@ -137,7 +137,7 @@ extern "C" __global__ void LB_Init_Comp_SP_27(unsigned int* neighborX,
          //////////////////////////////////////////////////////////////////////////
          real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-         (D.f[dirZERO])[kzero] =   c8o27* (drho-cu_sq*(c1o1+drho));
+         (D.f[dirREST])[kzero] =   c8o27* (drho-cu_sq*(c1o1+drho));
          (D.f[dirE   ])[ke   ] =   c2o27* (drho+ (c1o1+drho) * (c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq));
          (D.f[dirW   ])[kw   ] =   c2o27* (drho+ (c1o1+drho) * (c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq));
          (D.f[dirN   ])[kn   ] =   c2o27* (drho+ (c1o1+drho) * (c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -232,7 +232,7 @@ extern "C" __global__ void LB_Init_Comp_Neq_SP_27( unsigned int* neighborX,
                 D.f[dirBS  ] = &DD[dirBS  *size_Mat];
                 D.f[dirBN  ] = &DD[dirBN  *size_Mat];
                 D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-                D.f[dirZERO] = &DD[dirZERO*size_Mat];
+                D.f[dirREST] = &DD[dirREST*size_Mat];
                 D.f[dirTNE ] = &DD[dirTNE *size_Mat];
                 D.f[dirTSW ] = &DD[dirTSW *size_Mat];
                 D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -262,7 +262,7 @@ extern "C" __global__ void LB_Init_Comp_Neq_SP_27( unsigned int* neighborX,
                 D.f[dirTN  ] = &DD[dirBS  *size_Mat];
                 D.f[dirTS  ] = &DD[dirBN  *size_Mat];
                 D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-                D.f[dirZERO] = &DD[dirZERO*size_Mat];
+                D.f[dirREST] = &DD[dirREST*size_Mat];
                 D.f[dirBSW ] = &DD[dirTNE *size_Mat];
                 D.f[dirBNE ] = &DD[dirTSW *size_Mat];
                 D.f[dirBNW ] = &DD[dirTSE *size_Mat];
@@ -392,7 +392,7 @@ extern "C" __global__ void LB_Init_Comp_Neq_SP_27( unsigned int* neighborX,
             //////////////////////////////////////////////////////////////////////////
             real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-            (D.f[dirZERO])[kzero] =   c8o27* (drho-cu_sq*(c1o1+drho));
+            (D.f[dirREST])[kzero] =   c8o27* (drho-cu_sq*(c1o1+drho));
             (D.f[dirE   ])[ke   ] =   c2o27* (drho+ (c1o1+drho) * (c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq));
             (D.f[dirW   ])[kw   ] =   c2o27* (drho+ (c1o1+drho) * (c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq));
             (D.f[dirN   ])[kn   ] =   c2o27* (drho+ (c1o1+drho) * (c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq));
@@ -422,7 +422,7 @@ extern "C" __global__ void LB_Init_Comp_Neq_SP_27( unsigned int* neighborX,
 
             //////////////////////////////////////////////////////////////////////////
 
-            (D.f[dirZERO])[kzero] += (c1o1+drho) * f_ZERO;
+            (D.f[dirREST])[kzero] += (c1o1+drho) * f_ZERO;
             (D.f[dirE   ])[ke   ] += (c1o1+drho) * f_E   ;
             (D.f[dirW   ])[kw   ] += (c1o1+drho) * f_E   ;
             (D.f[dirN   ])[kn   ] += (c1o1+drho) * f_N   ;
@@ -456,9 +456,9 @@ extern "C" __global__ void LB_Init_Comp_Neq_SP_27( unsigned int* neighborX,
 	    {
 		    //////////////////////////////////////////////////////////////////////////
 		    Distributions27 D;
-		    D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		    D.f[dirREST] = &DD[dirREST*size_Mat];
 		    //////////////////////////////////////////////////////////////////////////
-		    (D.f[dirZERO])[k] = c96o1;
+		    (D.f[dirREST])[k] = c96o1;
 		    //////////////////////////////////////////////////////////////////////////
 	    }
    }
diff --git a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitIncompAD27/InitIncompAD27_Device.cu b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitIncompAD27/InitIncompAD27_Device.cu
index f304201bf..71e4cbc1c 100644
--- a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitIncompAD27/InitIncompAD27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitIncompAD27/InitIncompAD27_Device.cu
@@ -57,7 +57,7 @@ extern "C" __global__ void LB_Init_Incomp_AD_27(unsigned int* neighborX,
             D27.f[dirBS  ] = &DD27[dirBS  *size_Mat];
             D27.f[dirBN  ] = &DD27[dirBN  *size_Mat];
             D27.f[dirTS  ] = &DD27[dirTS  *size_Mat];
-            D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+            D27.f[dirREST] = &DD27[dirREST*size_Mat];
             D27.f[dirTNE ] = &DD27[dirTNE *size_Mat];
             D27.f[dirTSW ] = &DD27[dirTSW *size_Mat];
             D27.f[dirTSE ] = &DD27[dirTSE *size_Mat];
@@ -87,7 +87,7 @@ extern "C" __global__ void LB_Init_Incomp_AD_27(unsigned int* neighborX,
             D27.f[dirTN  ] = &DD27[dirBS  *size_Mat];
             D27.f[dirTS  ] = &DD27[dirBN  *size_Mat];
             D27.f[dirBN  ] = &DD27[dirTS  *size_Mat];
-            D27.f[dirZERO] = &DD27[dirZERO*size_Mat];
+            D27.f[dirREST] = &DD27[dirREST*size_Mat];
             D27.f[dirBSW ] = &DD27[dirTNE *size_Mat];
             D27.f[dirBNE ] = &DD27[dirTSW *size_Mat];
             D27.f[dirBNW ] = &DD27[dirTSE *size_Mat];
@@ -139,7 +139,7 @@ extern "C" __global__ void LB_Init_Incomp_AD_27(unsigned int* neighborX,
          ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
          real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-         (D27.f[dirZERO])[kzero] =   c8o27* ConcD*(c1o1-cu_sq);
+         (D27.f[dirREST])[kzero] =   c8o27* ConcD*(c1o1-cu_sq);
          (D27.f[dirE   ])[ke   ] =   c2o27* ConcD*(c1o1+c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq);
          (D27.f[dirW   ])[kw   ] =   c2o27* ConcD*(c1o1+c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq);
          (D27.f[dirN   ])[kn   ] =   c2o27* ConcD*(c1o1+c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq);
diff --git a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitSP27/InitSP27_Device.cu b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitSP27/InitSP27_Device.cu
index ad55c1752..9b2e3d150 100644
--- a/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitSP27/InitSP27_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/PreProcessor/PreProcessorStrategy/InitSP27/InitSP27_Device.cu
@@ -57,7 +57,7 @@ extern "C" __global__ void LB_Init_SP_27(unsigned int* neighborX,
             D.f[dirBS  ] = &DD[dirBS  *size_Mat];
             D.f[dirBN  ] = &DD[dirBN  *size_Mat];
             D.f[dirTS  ] = &DD[dirTS  *size_Mat];
-            D.f[dirZERO] = &DD[dirZERO*size_Mat];
+            D.f[dirREST] = &DD[dirREST*size_Mat];
             D.f[dirTNE ] = &DD[dirTNE *size_Mat];
             D.f[dirTSW ] = &DD[dirTSW *size_Mat];
             D.f[dirTSE ] = &DD[dirTSE *size_Mat];
@@ -87,7 +87,7 @@ extern "C" __global__ void LB_Init_SP_27(unsigned int* neighborX,
             D.f[dirTN  ] = &DD[dirBS  *size_Mat];
             D.f[dirTS  ] = &DD[dirBN  *size_Mat];
             D.f[dirBN  ] = &DD[dirTS  *size_Mat];
-            D.f[dirZERO] = &DD[dirZERO*size_Mat];
+            D.f[dirREST] = &DD[dirREST*size_Mat];
             D.f[dirBSW ] = &DD[dirTNE *size_Mat];
             D.f[dirBNE ] = &DD[dirTSW *size_Mat];
             D.f[dirBNW ] = &DD[dirTSE *size_Mat];
@@ -135,7 +135,7 @@ extern "C" __global__ void LB_Init_SP_27(unsigned int* neighborX,
          //////////////////////////////////////////////////////////////////////////
          real cu_sq=c3o2*(vx1*vx1+vx2*vx2+vx3*vx3);
 
-         (D.f[dirZERO])[kzero] =   c8o27* (drho-cu_sq);
+         (D.f[dirREST])[kzero] =   c8o27* (drho-cu_sq);
          (D.f[dirE   ])[ke   ] =   c2o27* (drho+c3o1*( vx1        )+c9o2*( vx1        )*( vx1        )-cu_sq);
          (D.f[dirW   ])[kw   ] =   c2o27* (drho+c3o1*(-vx1        )+c9o2*(-vx1        )*(-vx1        )-cu_sq);
          (D.f[dirN   ])[kn   ] =   c2o27* (drho+c3o1*(    vx2     )+c9o2*(     vx2    )*(     vx2    )-cu_sq);
@@ -167,9 +167,9 @@ extern "C" __global__ void LB_Init_SP_27(unsigned int* neighborX,
 	  {
 		  //////////////////////////////////////////////////////////////////////////
 		  Distributions27 D;
-		  D.f[dirZERO] = &DD[dirZERO*size_Mat];
+		  D.f[dirREST] = &DD[dirREST*size_Mat];
 		  //////////////////////////////////////////////////////////////////////////
-		  (D.f[dirZERO])[k] = c96o1;
+		  (D.f[dirREST])[k] = c96o1;
 		  //////////////////////////////////////////////////////////////////////////
 	  }
    }
-- 
GitLab