diff --git a/src/explicitgrid.hh b/src/explicitgrid.hh index ee691f0844ec60caa4463d77a1dc664a81269a9c..fcbac18c87899ff24f3bc5878eab8f5557ea125d 100644 --- a/src/explicitgrid.hh +++ b/src/explicitgrid.hh @@ -1,15 +1,7 @@ #ifndef SRC_EXPLICITGRID_HH #define SRC_EXPLICITGRID_HH -#if !HAVE_ALUGRID -#error ALUGRID is required -#endif - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wignored-qualifiers" -#include <dune/grid/alugrid.hh> -#pragma clang diagnostic pop +#include "gridselector.hh" -using Grid = Dune::ALUGrid<MY_DIM, MY_DIM, Dune::simplex, Dune::nonconforming>; using GridView = Grid::LeafGridView; #endif diff --git a/src/gridselector.hh b/src/gridselector.hh new file mode 100644 index 0000000000000000000000000000000000000000..0940e87a2b4af9f71ebc2d6d72eee75fcb569cfc --- /dev/null +++ b/src/gridselector.hh @@ -0,0 +1,24 @@ +#ifndef MY_DIM +#error MY_DIM unset +#endif + +#define WANT_ALUGRID 0 + +#define WANT_GRID WANT_ALUGRID + +#if WANT_GRID == WANT_ALUGRID + +#if !HAVE_ALUGRID +#error ALUGRID was requested but not found +#endif +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wignored-qualifiers" +#include <dune/grid/alugrid.hh> +#pragma clang diagnostic pop +using Grid = Dune::ALUGrid<MY_DIM, MY_DIM, Dune::simplex, Dune::nonconforming>; + +#else + +#error requested a grid that does not exist + +#endif diff --git a/src/sand-wedge.cc b/src/sand-wedge.cc index 74d93ab0472af6d4e2384c1fab6be03ac5a513d4..0dfdc6f0d0de350db42e9704186387fd442f953e 100644 --- a/src/sand-wedge.cc +++ b/src/sand-wedge.cc @@ -16,14 +16,6 @@ #error datadir unset #endif -#ifndef MY_DIM -#error MY_DIM unset -#endif - -#if !HAVE_ALUGRID -#error ALUGRID is required -#endif - #include <cmath> #include <exception> #include <fstream> @@ -38,11 +30,6 @@ #include <dune/common/parametertree.hh> #include <dune/common/parametertreeparser.hh> -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wignored-qualifiers" -#include <dune/grid/alugrid.hh> -#pragma clang diagnostic pop - #include <dune/grid/common/mcmgmapper.hh> #include <dune/istl/bcrsmatrix.hh> #include <dune/istl/bvector.hh> @@ -74,6 +61,7 @@ #include "enums.hh" #include "fixedpointiterator.hh" #include "friction_writer.hh" +#include "gridselector.hh" #include "sand-wedge-data/mybody.hh" #include "sand-wedge-data/mygeometry.hh" #include "sand-wedge-data/myglobalfrictiondata.hh" @@ -103,7 +91,6 @@ int main(int argc, char *argv[]) { MyGeometry::write(); // {{{ Set up grid - using Grid = Dune::ALUGrid<dims, dims, Dune::simplex, Dune::nonconforming>; GridConstructor<Grid> gridConstructor; auto grid = gridConstructor.getGrid();