From 2cac5acd80efc6caabf425438de60621487a69fc Mon Sep 17 00:00:00 2001
From: Tomas Oberhuber <tomas.oberhuber@fjfi.cvut.cz>
Date: Sun, 3 Apr 2016 11:40:58 +0200
Subject: [PATCH] Debuging build config tags.

---
 examples/advection/LaxFridrichs_impl.h          | 6 +++---
 examples/advection/advectionProblem_impl.h      | 4 ++--
 examples/inviscid-flow/1d/eulerBuildConfigTag.h | 7 ++++---
 examples/inviscid-flow/2d/eulerBuildConfigTag.h | 7 ++++---
 src/solvers/tnlBuildConfigTags.h                | 5 +----
 5 files changed, 14 insertions(+), 15 deletions(-)

diff --git a/examples/advection/LaxFridrichs_impl.h b/examples/advection/LaxFridrichs_impl.h
index 6a52a10d62..cc487e2818 100644
--- a/examples/advection/LaxFridrichs_impl.h
+++ b/examples/advection/LaxFridrichs_impl.h
@@ -306,7 +306,7 @@ getLinearSystemRowLength( const MeshType& mesh,
     * by the Finite difference method.
     */
 
-   return 2*Dimensions + 1;
+   //return 2*Dimensions + 1;
 }
 
 template< typename MeshReal,
@@ -333,7 +333,7 @@ updateLinearSystem( const RealType& time,
     * by the Finite difference method.
     */
 
-    const typename MeshEntity::template NeighbourEntities< 3 >& neighbourEntities = entity.getNeighbourEntities(); 
+   /* const typename MeshEntity::template NeighbourEntities< 3 >& neighbourEntities = entity.getNeighbourEntities(); 
    const RealType& lambdaX = tau * entity.getMesh().template getSpaceStepsProducts< -2,  0,  0 >(); 
    const RealType& lambdaY = tau * entity.getMesh().template getSpaceStepsProducts<  0, -2,  0 >(); 
    const RealType& lambdaZ = tau * entity.getMesh().template getSpaceStepsProducts<  0,  0, -2 >(); 
@@ -350,7 +350,7 @@ updateLinearSystem( const RealType& time,
    matrixRow.setElement( 3, center, 2.0 * ( lambdaX + lambdaY + lambdaZ ) );
    matrixRow.setElement( 4, east,   -lambdaX );
    matrixRow.setElement( 5, north,  -lambdaY );
-   matrixRow.setElement( 6, up,     -lambdaZ );
+   matrixRow.setElement( 6, up,     -lambdaZ );*/
 }
 
 #endif	/* LaxFridrichsIMPL_H */
diff --git a/examples/advection/advectionProblem_impl.h b/examples/advection/advectionProblem_impl.h
index 2e0b0f7a52..6cb64dd311 100644
--- a/examples/advection/advectionProblem_impl.h
+++ b/examples/advection/advectionProblem_impl.h
@@ -301,7 +301,7 @@ assemblyLinearSystem( const RealType& time,
                       DofVectorType& b,
                       MeshDependentDataType& meshDependentData )
 {
-   tnlLinearSystemAssembler< Mesh,
+   /*tnlLinearSystemAssembler< Mesh,
                              MeshFunctionType,
                              DifferentialOperator,
                              BoundaryCondition,
@@ -319,7 +319,7 @@ assemblyLinearSystem( const RealType& time,
                                                              this->rightHandSide,
                                                              u,
                                                              matrix,
-                                                             b );
+                                                             b );*/
 }
 
 #endif /* advectionPROBLEM_IMPL_H_ */
diff --git a/examples/inviscid-flow/1d/eulerBuildConfigTag.h b/examples/inviscid-flow/1d/eulerBuildConfigTag.h
index e552291035..f0fc2953ad 100644
--- a/examples/inviscid-flow/1d/eulerBuildConfigTag.h
+++ b/examples/inviscid-flow/1d/eulerBuildConfigTag.h
@@ -17,10 +17,11 @@ template<> struct tnlConfigTagReal< eulerBuildConfigTag, long double > { enum {
 template<> struct tnlConfigTagIndex< eulerBuildConfigTag, short int >{ enum { enabled = false }; };
 template<> struct tnlConfigTagIndex< eulerBuildConfigTag, long int >{ enum { enabled = false }; };
 
+template< int Dimensions > struct tnlConfigTagDimensions< eulerBuildConfigTag, Dimensions >{ enum { enabled = ( Dimensions == 1 ) }; };
+
 /****
  * Use of tnlGrid is enabled for allowed dimensions and Real, Device and Index types.
  */
-
 template< int Dimensions, typename Real, typename Device, typename Index >
    struct tnlConfigTagMesh< eulerBuildConfigTag, tnlGrid< Dimensions, Real, Device, Index > >
       { enum { enabled = tnlConfigTagDimensions< eulerBuildConfigTag, Dimensions >::enabled  &&
@@ -32,8 +33,8 @@ template< int Dimensions, typename Real, typename Device, typename Index >
  * Please, chose your preferred time discretisation  here.
  */
 template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlExplicitTimeDiscretisationTag >{ enum { enabled = true }; };
-template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlSemiImplicitTimeDiscretisationTag >{ enum { enabled = true }; };
-template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlImplicitTimeDiscretisationTag >{ enum { enabled = true }; };
+template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlSemiImplicitTimeDiscretisationTag >{ enum { enabled = false }; };
+template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlImplicitTimeDiscretisationTag >{ enum { enabled = false }; };
 
 /****
  * Only the Runge-Kutta-Merson solver is enabled by default.
diff --git a/examples/inviscid-flow/2d/eulerBuildConfigTag.h b/examples/inviscid-flow/2d/eulerBuildConfigTag.h
index d242a88650..a03c260be2 100644
--- a/examples/inviscid-flow/2d/eulerBuildConfigTag.h
+++ b/examples/inviscid-flow/2d/eulerBuildConfigTag.h
@@ -17,10 +17,11 @@ template<> struct tnlConfigTagReal< eulerBuildConfigTag, long double > { enum {
 template<> struct tnlConfigTagIndex< eulerBuildConfigTag, short int >{ enum { enabled = false }; };
 template<> struct tnlConfigTagIndex< eulerBuildConfigTag, long int >{ enum { enabled = false }; };
 
+template< int Dimensions > struct tnlConfigTagDimensions< eulerBuildConfigTag, Dimensions >{ enum { enabled = ( Dimensions == 2 ) }; };
+
 /****
  * Use of tnlGrid is enabled for allowed dimensions and Real, Device and Index types.
  */
-
 template< int Dimensions, typename Real, typename Device, typename Index >
    struct tnlConfigTagMesh< eulerBuildConfigTag, tnlGrid< Dimensions, Real, Device, Index > >
       { enum { enabled = tnlConfigTagDimensions< eulerBuildConfigTag, Dimensions >::enabled  &&
@@ -32,8 +33,8 @@ template< int Dimensions, typename Real, typename Device, typename Index >
  * Please, chose your preferred time discretisation  here.
  */
 template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlExplicitTimeDiscretisationTag >{ enum { enabled = true }; };
-template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlSemiImplicitTimeDiscretisationTag >{ enum { enabled = true }; };
-template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlImplicitTimeDiscretisationTag >{ enum { enabled = true }; };
+template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlSemiImplicitTimeDiscretisationTag >{ enum { enabled = false }; };
+template<> struct tnlConfigTagTimeDiscretisation< eulerBuildConfigTag, tnlImplicitTimeDiscretisationTag >{ enum { enabled = false }; };
 
 /****
  * Only the Runge-Kutta-Merson solver is enabled by default.
diff --git a/src/solvers/tnlBuildConfigTags.h b/src/solvers/tnlBuildConfigTags.h
index ced6a47fc7..4ee030b658 100644
--- a/src/solvers/tnlBuildConfigTags.h
+++ b/src/solvers/tnlBuildConfigTags.h
@@ -57,10 +57,7 @@ template< typename ConfigTag > struct tnlConfigTagMeshResolve{ enum { enabled =
 /****
  * 1, 2, and 3 dimensions are enabled by default
  */
-template< typename ConfigTag, int Dimensions > struct tnlConfigTagDimensions{ enum { enabled = false }; };
-   template< typename ConfigTag > struct tnlConfigTagDimensions< ConfigTag, 1 >{ enum { enabled = true }; };
-   template< typename ConfigTag > struct tnlConfigTagDimensions< ConfigTag, 2 >{ enum { enabled = true }; };
-   template< typename ConfigTag > struct tnlConfigTagDimensions< ConfigTag, 3 >{ enum { enabled = true }; };
+template< typename ConfigTag, int Dimensions > struct tnlConfigTagDimensions{ enum { enabled = ( Dimensions > 0 && Dimensions <= 3 ) }; };
 
 /****
  * Up to the exceptions enlisted below, all mesh types are disabled by default.
-- 
GitLab