From 541e1161e3a3e3bd3b534ae975d98c690af3ae71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Milk?= <rene.milk@wwu.de> Date: Fri, 26 Jan 2018 15:15:39 +0100 Subject: [PATCH] [bindings] adjust for cg spaces removal --- dune/gdt/CMakeLists.txt | 4 +- dune/gdt/assembler/system.bindings.hh | 11 +- dune/gdt/discretefunction/default.bindings.hh | 6 +- .../gdt/functionals/elliptic-ipdg.bindings.hh | 12 +- dune/gdt/functionals/l2.bindings.cc | 12 +- dune/gdt/functionals/l2.bindings.hh | 12 +- .../functionals/l2.bindings/alu_fem_istl.cc | 24 ---- .../functionals/l2.bindings/yasp_fem_istl.cc | 24 ---- dune/gdt/operators/elliptic-ipdg.bindings.hh | 8 +- dune/gdt/operators/elliptic.bindings.hh | 55 ++------ dune/gdt/playground/spaces/restricted.hh | 1 + dune/gdt/projections.bindings.hh | 9 +- dune/gdt/projections/dirichlet.bindings.hh | 27 +--- dune/gdt/spaces/cg.bindings.hh | 132 +++++------------- 14 files changed, 92 insertions(+), 245 deletions(-) delete mode 100644 dune/gdt/functionals/l2.bindings/alu_fem_istl.cc delete mode 100644 dune/gdt/functionals/l2.bindings/yasp_fem_istl.cc diff --git a/dune/gdt/CMakeLists.txt b/dune/gdt/CMakeLists.txt index 43980b4bc..5b2f95801 100644 --- a/dune/gdt/CMakeLists.txt +++ b/dune/gdt/CMakeLists.txt @@ -95,8 +95,8 @@ if(dune-pybindxi_FOUND) target_link_libraries(__functionals_elliptic_ipdg __functionals_elliptic_ipdg_helper) list(APPEND pybindxi_modules __functionals_elliptic_ipdg) dune_pybindxi_add_helper_lib(__functionals_l2_helper EXCLUDE_FROM_ALL - functionals/l2.bindings/alu_fem_istl.cc - functionals/l2.bindings/yasp_fem_istl.cc) + functionals/l2.bindings/alu_gdt_istl.cc + functionals/l2.bindings/yasp_gdt_istl.cc) dune_pybindxi_add_module(__functionals_l2 EXCLUDE_FROM_ALL functionals/l2.bindings.cc) target_link_libraries(__functionals_l2 __functionals_l2_helper) list(APPEND pybindxi_modules __functionals_l2) diff --git a/dune/gdt/assembler/system.bindings.hh b/dune/gdt/assembler/system.bindings.hh index aba0262aa..869cef1ff 100644 --- a/dune/gdt/assembler/system.bindings.hh +++ b/dune/gdt/assembler/system.bindings.hh @@ -327,13 +327,11 @@ public: _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP(_pre, dd_subdomain, part, _s_type, fem, dd_subdomain, _p, 1, 1) #define DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_FEM(_pre) \ - _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_FEM(_pre, cg, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_FEM(_pre, dg, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU(_pre, dd_subdomain_boundary, part, dg, fem, dd_subdomain, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU(_pre, dd_subdomain_coupling, part, dg, fem, dd_subdomain, 1, 1, 1) #define DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_FEM(_pre) \ - _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_FEM(_pre, cg, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_FEM(_pre, dg, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP(_pre, dd_subdomain_boundary, part, dg, fem, dd_subdomain, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP(_pre, dd_subdomain_coupling, part, dg, fem, dd_subdomain, 1, 1, 1) @@ -351,10 +349,13 @@ public: _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP(_pre, leaf, view, _s_type, gdt, leaf, _p, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP(_pre, level, view, _s_type, gdt, level, _p, 1, 1) -#define DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_GDT(_pre) _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_GDT(_pre, fv, 0, 1, 1) +#define DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_GDT(_pre) \ + _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_GDT(_pre, fv, 0, 1, 1); \ + _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_GDT(_pre, cg, 1, 1, 1) #define DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_GDT(_pre) \ - _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_GDT(_pre, fv, 0, 1, 1) + _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_GDT(_pre, fv, 0, 1, 1); \ + _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_YASP_GDT(_pre, cg, 1, 1, 1) #define DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB(_pre) \ DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB_ALU_FEM(_pre); \ @@ -414,7 +415,7 @@ DUNE_GDT_ASSEMBLER_SYSTEM_BIND_LIB(extern template); _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_ALL_GRIDS(_m, level, view, _s_type, gdt, level, _p, 1, 1) #define DUNE_GDT_ASSEMBLER_SYSTEM_BIND(_m) \ - _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_FEM(_m, cg, 1, 1, 1); \ + _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_GDT(_m, cg, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_FEM(_m, dg, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_ALL_GRIDS(_m, dd_subdomain_boundary, part, dg, fem, dd_subdomain, 1, 1, 1); \ _DUNE_GDT_ASSEMBLER_SYSTEM_BIND_ALL_GRIDS(_m, dd_subdomain_coupling, part, dg, fem, dd_subdomain, 1, 1, 1); \ diff --git a/dune/gdt/discretefunction/default.bindings.hh b/dune/gdt/discretefunction/default.bindings.hh index 5e25db072..9e17063db 100644 --- a/dune/gdt/discretefunction/default.bindings.hh +++ b/dune/gdt/discretefunction/default.bindings.hh @@ -315,8 +315,6 @@ public: #if HAVE_DUNE_FEM #define _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_FEM(_m) \ - _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, leaf, cg, fem, 1, 1, 1); \ - _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, level, cg, fem, 1, 1, 1); \ _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, dd_subdomain, cg, fem, 1, 1, 1); \ _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, dd_subdomain, block_cg, fem, 1, 1, 1); \ _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, leaf, dg, fem, 1, 1, 1); \ @@ -329,7 +327,9 @@ public: #define _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_GDT(_m) \ _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, leaf, fv, gdt, 0, 1, 1); \ - _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, level, fv, gdt, 0, 1, 1) + _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, level, fv, gdt, 0, 1, 1); \ + _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, leaf, cg, gdt, 1, 1, 1); \ + _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_ALL_GRIDS(_m, level, cg, gdt, 1, 1, 1); #if HAVE_DUNE_PDELAB #define _DUNE_GDT_DISCRETEFUNCTION_DEFAULT_BIND_PDELAB(_m) \ diff --git a/dune/gdt/functionals/elliptic-ipdg.bindings.hh b/dune/gdt/functionals/elliptic-ipdg.bindings.hh index 6c8e5645c..160766b07 100644 --- a/dune/gdt/functionals/elliptic-ipdg.bindings.hh +++ b/dune/gdt/functionals/elliptic-ipdg.bindings.hh @@ -537,17 +537,17 @@ public: _prefix, 2, YASP_2D_EQUIDISTANT_OFFSET, _layer, _g_backend, _s_type, _s_backend, _p, _la) // alu_fem__istl.cc -#if HAVE_DUNE_ALUGRID && HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, leaf, part, cg, fem, 1, istl_dense); -DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, level, part, cg, fem, 1, istl_dense); DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, dd_subdomain, part, cg, fem, 1, istl_dense); +#if HAVE_DUNE_ALUGRID && HAVE_DUNE_ISTL +DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, leaf, view, cg, gdt, 1, istl_dense); +DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, level, view, cg, gdt, 1, istl_dense); #endif // yasp_fem_istl.cc -#if HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, leaf, part, cg, fem, 1, istl_dense); -DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, level, part, cg, fem, 1, istl_dense); DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, dd_subdomain, part, cg, fem, 1, istl_dense); +#if HAVE_DUNE_ISTL +DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, leaf, view, cg, gdt, 1, istl_dense); +DUNE_GDT_FUNCTIONALS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, level, view, cg, gdt, 1, istl_dense); #endif // end: this is what we need for the lib diff --git a/dune/gdt/functionals/l2.bindings.cc b/dune/gdt/functionals/l2.bindings.cc index 4ac20821f..81c09cf85 100644 --- a/dune/gdt/functionals/l2.bindings.cc +++ b/dune/gdt/functionals/l2.bindings.cc @@ -42,23 +42,27 @@ PYBIND11_PLUGIN(__functionals_l2) // alu_fem_istl.cc #if HAVE_DUNE_ALUGRID && HAVE_DUNE_FEM && HAVE_DUNE_ISTL - DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, leaf, part, cg, fem, 1, istl_sparse); - DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, level, part, cg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, dd_subdomain, part, cg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, leaf, part, dg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, level, part, dg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, dd_subdomain, part, dg, fem, 1, istl_sparse); #endif +#if HAVE_DUNE_ALUGRID && HAVE_DUNE_ISTL + DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, leaf, view, cg, gdt, 1, istl_sparse); + DUNE_GDT_FUNCTIONALS_L2_BIND_ALU(m, level, view, cg, gdt, 1, istl_sparse); +#endif // yasp_fem_istl.cc #if HAVE_DUNE_FEM && HAVE_DUNE_ISTL - DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, leaf, part, cg, fem, 1, istl_sparse); - DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, level, part, cg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, dd_subdomain, part, cg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, leaf, part, dg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, level, part, dg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, dd_subdomain, part, dg, fem, 1, istl_sparse); #endif +#if HAVE_DUNE_ISTL + DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, leaf, view, cg, gdt, 1, istl_sparse); + DUNE_GDT_FUNCTIONALS_L2_BIND_YASP(m, level, view, cg, gdt, 1, istl_sparse); +#endif m.def("_init_mpi", [](const std::vector<std::string>& args) { diff --git a/dune/gdt/functionals/l2.bindings.hh b/dune/gdt/functionals/l2.bindings.hh index a6f786f12..12c76b37b 100644 --- a/dune/gdt/functionals/l2.bindings.hh +++ b/dune/gdt/functionals/l2.bindings.hh @@ -234,17 +234,17 @@ public: _prefix, 2, YASP_2D_EQUIDISTANT_OFFSET, _layer, _g_backend, _s_type, _s_backend, _p, _la) // alu_fem_istl.cc -#if HAVE_DUNE_ALUGRID && HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(extern template, leaf, part, cg, fem, 1, istl_sparse); -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(extern template, level, part, cg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(extern template, dd_subdomain, part, cg, fem, 1, istl_sparse); +#if HAVE_DUNE_ALUGRID && HAVE_DUNE_ISTL +DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(extern template, leaf, part, cg, gdt, 1, istl_sparse); +DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(extern template, level, part, cg, gdt, 1, istl_sparse); #endif // yasp_fem_istl.cc -#if HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(extern template, leaf, part, cg, fem, 1, istl_sparse); -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(extern template, level, part, cg, fem, 1, istl_sparse); DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(extern template, dd_subdomain, part, cg, fem, 1, istl_sparse); +#if HAVE_DUNE_ISTL +DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(extern template, leaf, part, cg, gdt, 1, istl_sparse); +DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(extern template, level, part, cg, gdt, 1, istl_sparse); #endif // end: this is what we need for the lib diff --git a/dune/gdt/functionals/l2.bindings/alu_fem_istl.cc b/dune/gdt/functionals/l2.bindings/alu_fem_istl.cc deleted file mode 100644 index d949c4799..000000000 --- a/dune/gdt/functionals/l2.bindings/alu_fem_istl.cc +++ /dev/null @@ -1,24 +0,0 @@ -// This file is part of the dune-gdt project: -// https://github.com/dune-community/dune-gdt -// Copyright 2010-2018 dune-gdt developers and contributors. All rights reserved. -// License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -// or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -// with "runtime exception" (http://www.dune-project.org/license.html) -// Authors: -// Felix Schindler (2017) - -#include "config.h" - -#if HAVE_DUNE_PYBINDXI - -#include <dune/gdt/functionals/l2.bindings.hh> - - -#if HAVE_DUNE_ALUGRID && HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(template, leaf, part, cg, fem, 1, istl_sparse); -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(template, level, part, cg, fem, 1, istl_sparse); -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_ALU(template, dd_subdomain, part, cg, fem, 1, istl_sparse); -#endif - - -#endif // HAVE_DUNE_PYBINDXI diff --git a/dune/gdt/functionals/l2.bindings/yasp_fem_istl.cc b/dune/gdt/functionals/l2.bindings/yasp_fem_istl.cc deleted file mode 100644 index f90afb8df..000000000 --- a/dune/gdt/functionals/l2.bindings/yasp_fem_istl.cc +++ /dev/null @@ -1,24 +0,0 @@ -// This file is part of the dune-gdt project: -// https://github.com/dune-community/dune-gdt -// Copyright 2010-2018 dune-gdt developers and contributors. All rights reserved. -// License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -// or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -// with "runtime exception" (http://www.dune-project.org/license.html) -// Authors: -// Felix Schindler (2017) - -#include "config.h" - -#if HAVE_DUNE_PYBINDXI - -#include <dune/gdt/functionals/l2.bindings.hh> - - -#if HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(template, leaf, part, cg, fem, 1, istl_sparse); -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(template, level, part, cg, fem, 1, istl_sparse); -DUNE_GDT_FUNCTIONALS_L2_BIND_LIB_YASP(template, dd_subdomain, part, cg, fem, 1, istl_sparse); -#endif - - -#endif // HAVE_DUNE_PYBINDXI diff --git a/dune/gdt/operators/elliptic-ipdg.bindings.hh b/dune/gdt/operators/elliptic-ipdg.bindings.hh index 6406507e1..e9d37780c 100644 --- a/dune/gdt/operators/elliptic-ipdg.bindings.hh +++ b/dune/gdt/operators/elliptic-ipdg.bindings.hh @@ -421,16 +421,16 @@ public: // alu_fem__istl.cc #if HAVE_DUNE_ALUGRID && HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, leaf, part, cg, fem, 1, istl_sparse); -DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, level, part, cg, fem, 1, istl_sparse); DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, dd_subdomain, part, cg, fem, 1, istl_sparse); +DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, leaf, view, cg, gdt, 1, istl_sparse); +DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_ALU(extern template, level, view, cg, gdt, 1, istl_sparse); #endif // yasp_fem_istl.cc #if HAVE_DUNE_FEM && HAVE_DUNE_ISTL -DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, leaf, part, cg, fem, 1, istl_sparse); -DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, level, part, cg, fem, 1, istl_sparse); DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, dd_subdomain, part, cg, fem, 1, istl_sparse); +DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, leaf, view, cg, gdt, 1, istl_sparse); +DUNE_GDT_OPERATORS_ELLIPTIC_IPDG_BIND_LIB_YASP(extern template, level, view, cg, gdt, 1, istl_sparse); #endif // end: this is what we need for the lib diff --git a/dune/gdt/operators/elliptic.bindings.hh b/dune/gdt/operators/elliptic.bindings.hh index d46e0d13c..fcfabe37c 100644 --- a/dune/gdt/operators/elliptic.bindings.hh +++ b/dune/gdt/operators/elliptic.bindings.hh @@ -300,63 +300,30 @@ public: _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_UG(_prefix, _layer, _g_backend, _s_type, _s_backend, _p, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_YASP(_prefix, _layer, _g_backend, _s_type, _s_backend, _p, _la) -#if HAVE_DUNE_FEM -#define _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM(_prefix, _la) \ - _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, leaf, part, cg, fem, 1, _la); \ - _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, level, part, cg, fem, 1, _la); \ - _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, dd_subdomain, part, cg, fem, 1, _la); \ + +#define _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_DEFAULT(_prefix, _la) \ + _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, leaf, part, cg, gdt, 1, _la); \ + _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, level, part, cg, gdt, 1, _la); \ + _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, dd_subdomain, part, cg, gdt, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, leaf, part, dg, fem, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, level, part, dg, fem, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_GRIDS(_prefix, dd_subdomain, part, dg, fem, 1, _la) #define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_COMMON(_prefix) -//_DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM(_prefix, common_dense) +//_DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_DEFAULT(_prefix, common_dense) //#if HAVE_EIGEN //#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_EIGEN(_prefix) \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM(_prefix, eigen_dense); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM(_prefix, eigen_sparse) +// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_DEFAULT(_prefix, eigen_dense); \ +// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_DEFAULT(_prefix, eigen_sparse) //#else #define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_EIGEN(_prefix) //#endif #if HAVE_DUNE_ISTL #define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_ISTL(_prefix) \ - _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM(_prefix, istl_sparse) -#else -#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_ISTL(_prefix) -#endif + _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_DEFAULT(_prefix, istl_sparse) #else -#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_COMMON(_prefix) -#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_EIGEN(_prefix) #define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_ISTL(_prefix) #endif -//#if HAVE_DUNE_PDELAB -//#define _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB(_prefix, _la) \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_ALBERTA(_prefix, leaf, view, cg, pdelab, 1, _la); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_ALU(_prefix, leaf, view, cg, pdelab, 1, _la); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_YASP(_prefix, leaf, view, cg, pdelab, 1, _la); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_ALBERTA(_prefix, level, view, cg, pdelab, 1, _la); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_ALU(_prefix, level, view, cg, pdelab, 1, _la); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_YASP(_prefix, level, view, cg, pdelab, 1, _la) -//#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_COMMON(_prefix) -//_DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB(_prefix, common_dense) -//#if HAVE_EIGEN -//#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_EIGEN(_prefix) \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB(_prefix, eigen_dense); \ -// _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB(_prefix, eigen_sparse) -//#else -//#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_EIGEN(_prefix) -//#endif -//#if HAVE_DUNE_ISTL -//#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_ISTL(_prefix) -//_DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB(_prefix, istl_sparse) -//#else -//#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_ISTL(_prefix) -//#endif -//#else -#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_COMMON(_prefix) -#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_EIGEN(_prefix) -#define DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_PDELAB_ISTL(_prefix) -//#endif // fem_istl.cc DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_ISTL(extern template); @@ -494,9 +461,9 @@ DUNE_GDT_OPERATORS_ELLIPTIC_BIND_LIB_FEM_ISTL(extern template); #if HAVE_DUNE_FEM #define _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_FEM(_m, _la) \ - _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, leaf, part, cg, fem, 1, _la); \ - _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, level, part, cg, fem, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, dd_subdomain, part, cg, fem, 1, _la); \ + _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, leaf, view, cg, gdt, 1, _la); \ + _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, level, view, cg, gdt, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, leaf, part, dg, fem, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, level, part, dg, fem, 1, _la); \ _DUNE_GDT_OPERATORS_ELLIPTIC_BIND_GRIDS(_m, dd_subdomain, part, dg, fem, 1, _la) diff --git a/dune/gdt/playground/spaces/restricted.hh b/dune/gdt/playground/spaces/restricted.hh index ece5929f9..002dc0306 100644 --- a/dune/gdt/playground/spaces/restricted.hh +++ b/dune/gdt/playground/spaces/restricted.hh @@ -69,6 +69,7 @@ public: typedef RestrictionGridLayer GridLayerType; typedef typename UnrestrictedSpace::RangeFieldType RangeFieldType; static const XT::Grid::Backends layer_backend = layer_backend_helper<>::value; + static constexpr const GDT::Backends backend_type{UnrestrictedSpace::backend_type}; }; // class RestrictedSpaceTraits diff --git a/dune/gdt/projections.bindings.hh b/dune/gdt/projections.bindings.hh index ec28522ea..58ceafede 100644 --- a/dune/gdt/projections.bindings.hh +++ b/dune/gdt/projections.bindings.hh @@ -106,16 +106,11 @@ public: #define _DUNE_GDT_PROJECTIONS_BIND_DEFAULT(_m, _la) \ _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, leaf, gdt, fv, 0, _la); \ + _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, dd_subdomain, gdt, cg, 1, _la); \ _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, level, gdt, fv, 0, _la) #if HAVE_DUNE_FEM -#define _DUNE_GDT_PROJECTIONS_BIND_FEM(_m, _la) \ - _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, leaf, fem, cg, 1, _la); \ - _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, level, fem, cg, 1, _la); \ - _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, dd_subdomain, fem, cg, 1, _la); \ - _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, leaf, fem, dg, 1, _la); \ - _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, level, fem, dg, 1, _la); \ - _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, dd_subdomain, fem, dg, 1, _la) +#define _DUNE_GDT_PROJECTIONS_BIND_FEM(_m, _la) _DUNE_GDT_PROJECTIONS_BIND_ALL_GRIDS(_m, dd_subdomain, fem, dg, 1, _la) #else #define _DUNE_GDT_PROJECTIONS_BIND_FEM(_m, _la) #endif diff --git a/dune/gdt/projections/dirichlet.bindings.hh b/dune/gdt/projections/dirichlet.bindings.hh index 86c03e373..38dba2bd2 100644 --- a/dune/gdt/projections/dirichlet.bindings.hh +++ b/dune/gdt/projections/dirichlet.bindings.hh @@ -118,29 +118,14 @@ public: _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND(_m, YASP_1D_EQUIDISTANT_OFFSET, _layer, _backend, 1, 1, _la); \ _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND(_m, YASP_2D_EQUIDISTANT_OFFSET, _layer, _backend, 1, 1, _la) -#if HAVE_DUNE_FEM -#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_FEM(_m, _la) \ - _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_ALBERTA(_m, leaf, fem, _la); \ - _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_ALU(_m, leaf, fem, _la); \ - _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_UG(_m, leaf, fem, _la); \ - _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_YASP(_m, leaf, fem, _la) -#else -#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_FEM(_m, _la) -#endif +#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_GDT(_m, _la) \ + _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_ALBERTA(_m, leaf, gdt, _la); \ + _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_ALU(_m, leaf, gdt, _la); \ + _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_UG(_m, leaf, gdt, _la); \ + _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_YASP(_m, leaf, gdt, _la) -//#if HAVE_DUNE_PDELAB -//#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_PDELAB(_m, _la) \ -// _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_ALBERTA(_m, leaf, pdelab, _la); \ -// _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_ALU(_m, leaf, pdelab, _la); \ -// _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_YASP(_m, leaf, pdelab, _la) -//// _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_UG(_m, leaf, pdelab, _la); // <- does not work -//#else -#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_PDELAB(_m, _la) -//#endif -#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_BACKENDS(_m, _la) \ - _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_FEM(_m, _la); \ - _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_PDELAB(_m, _la) +#define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_BACKENDS(_m, _la) _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_GDT(_m, _la); #define _DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_COMMON(_m) //_DUNE_GDT_PROJECTIONS_DIRICHLET_BIND_BACKENDS(_m, common_dense) diff --git a/dune/gdt/spaces/cg.bindings.hh b/dune/gdt/spaces/cg.bindings.hh index a072fdd21..1eae6a62b 100644 --- a/dune/gdt/spaces/cg.bindings.hh +++ b/dune/gdt/spaces/cg.bindings.hh @@ -21,124 +21,66 @@ // * fem #if HAVE_DUNE_FEM -#define _DUNE_GDT_SPACES_CG_BIND_FEM(_m, _GRID, _layer, _r, _rC) \ +#define _DUNE_GDT_SPACES_CG_BIND_GDT(_m, _GRID, _layer, _r, _rC) \ Dune::GDT::bindings::SpaceInterface<Dune::GDT::CgSpaceProvider<_GRID, \ Dune::XT::Grid::Layers::_layer, \ - Dune::GDT::Backends::fem, \ + Dune::GDT::Backends::gdt, \ 1, \ double, \ _r, \ _rC>>::bind(_m) //#if HAVE_ALBERTA -//#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA_LAYER(_m, _layer) \ -// _DUNE_GDT_SPACES_CG_BIND_FEM(_m, ALBERTA_2D, _layer, 1, 1) -//#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA(_m) \ -// _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA_LAYER(_m, dd_subdomain); \ -// _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA_LAYER(_m, leaf); \ -// _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA_LAYER(_m, level) +//#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA_LAYER(_m, _layer) \ +// _DUNE_GDT_SPACES_CG_BIND_GDT(_m, ALBERTA_2D, _layer, 1, 1) +//#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA(_m) \ +// _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA_LAYER(_m, dd_subdomain); \ +// _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA_LAYER(_m, leaf); \ +// _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA_LAYER(_m, level) //#else -#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA(_m) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA(_m) //#endif #if HAVE_DUNE_ALUGRID -#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALU_LAYER(_m, _layer) \ - _DUNE_GDT_SPACES_CG_BIND_FEM(_m, ALU_2D_SIMPLEX_CONFORMING, _layer, 1, 1) -#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALU(_m) \ - _DUNE_GDT_SPACES_CG_BIND_FEM_ALU_LAYER(_m, dd_subdomain); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_ALU_LAYER(_m, leaf); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_ALU_LAYER(_m, level) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALU_LAYER(_m, _layer) \ + _DUNE_GDT_SPACES_CG_BIND_GDT(_m, ALU_2D_SIMPLEX_CONFORMING, _layer, 1, 1) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALU(_m) \ + _DUNE_GDT_SPACES_CG_BIND_GDT_ALU_LAYER(_m, dd_subdomain); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_ALU_LAYER(_m, leaf); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_ALU_LAYER(_m, level) #else -#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALU(_m) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALU(_m) #endif //#if HAVE_DUNE_UGGRID || HAVE_UG -//#define _DUNE_GDT_SPACES_CG_BIND_FEM_UG_LAYER(_m, _layer) _DUNE_GDT_SPACES_CG_BIND_FEM(_m, UG_2D, _layer, 1, 1) -//#define _DUNE_GDT_SPACES_CG_BIND_FEM_UG(_m) \ -// _DUNE_GDT_SPACES_CG_BIND_FEM_UG_LAYER(_m, dd_subdomain); \ -// _DUNE_GDT_SPACES_CG_BIND_FEM_UG_LAYER(_m, leaf); \ -// _DUNE_GDT_SPACES_CG_BIND_FEM_UG_LAYER(_m, level) +//#define _DUNE_GDT_SPACES_CG_BIND_GDT_UG_LAYER(_m, _layer) _DUNE_GDT_SPACES_CG_BIND_GDT(_m, UG_2D, _layer, 1, 1) +//#define _DUNE_GDT_SPACES_CG_BIND_GDT_UG(_m) \ +// _DUNE_GDT_SPACES_CG_BIND_GDT_UG_LAYER(_m, dd_subdomain); \ +// _DUNE_GDT_SPACES_CG_BIND_GDT_UG_LAYER(_m, leaf); \ +// _DUNE_GDT_SPACES_CG_BIND_GDT_UG_LAYER(_m, level) //#else -#define _DUNE_GDT_SPACES_CG_BIND_FEM_UG(_m) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_UG(_m) //#endif -#define _DUNE_GDT_SPACES_CG_BIND_FEM_YASP_LAYER(_m, _layer) \ - _DUNE_GDT_SPACES_CG_BIND_FEM(_m, YASP_1D_EQUIDISTANT_OFFSET, _layer, 1, 1); \ - _DUNE_GDT_SPACES_CG_BIND_FEM(_m, YASP_2D_EQUIDISTANT_OFFSET, _layer, 1, 1) -#define _DUNE_GDT_SPACES_CG_BIND_FEM_YASP(_m) \ - _DUNE_GDT_SPACES_CG_BIND_FEM_YASP_LAYER(_m, dd_subdomain); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_YASP_LAYER(_m, leaf); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_YASP_LAYER(_m, level) - -#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALL(_m) \ - _DUNE_GDT_SPACES_CG_BIND_FEM_ALBERTA(_m); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_ALU(_m); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_UG(_m); \ - _DUNE_GDT_SPACES_CG_BIND_FEM_YASP(_m) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_YASP_LAYER(_m, _layer) \ + _DUNE_GDT_SPACES_CG_BIND_GDT(_m, YASP_1D_EQUIDISTANT_OFFSET, _layer, 1, 1); \ + _DUNE_GDT_SPACES_CG_BIND_GDT(_m, YASP_2D_EQUIDISTANT_OFFSET, _layer, 1, 1) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_YASP(_m) \ + _DUNE_GDT_SPACES_CG_BIND_GDT_YASP_LAYER(_m, dd_subdomain); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_YASP_LAYER(_m, leaf); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_YASP_LAYER(_m, level) + +#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALL(_m) \ + _DUNE_GDT_SPACES_CG_BIND_GDT_ALBERTA(_m); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_ALU(_m); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_UG(_m); \ + _DUNE_GDT_SPACES_CG_BIND_GDT_YASP(_m) #else // HAVE_DUNE_FEM -#define _DUNE_GDT_SPACES_CG_BIND_FEM_ALL(_m) +#define _DUNE_GDT_SPACES_CG_BIND_GDT_ALL(_m) #endif -//// * pdelab -//#if HAVE_DUNE_PDELAB -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB(_m, _GRID, _layer, _r, _rC) \ -// Dune::GDT::bindings::SpaceInterface<Dune::GDT::CgSpaceProvider<_GRID, \ -// Dune::XT::Grid::Layers::_layer, \ -// Dune::GDT::Backends::pdelab, \ -// 1, \ -// double, \ -// _r, \ -// _rC>>::bind(_m) -//#if HAVE_ALBERTA -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALBERTA_LAYER(_m, _layer) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB(_m, ALBERTA_2D, _layer, 1, 1) -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALBERTA(_m) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALBERTA_LAYER(_m, leaf); \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALBERTA_LAYER(_m, level) -//#else -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALBERTA(_m) -//#endif - -//#if HAVE_DUNE_ALUGRID -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALU_LAYER(_m, _layer) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB(_m, ALU_2D_SIMPLEX_CONFORMING, _layer, 1, 1) -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALU(_m) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALU_LAYER(_m, leaf); \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALU_LAYER(_m, level) -//#else -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALU(_m, _layer) -//#endif - -////#if HAVE_DUNE_UGGRID || HAVE_UG // <- does not work -////#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_UG_LAYER(_m, _layer) _DUNE_GDT_SPACES_CG_BIND_PDELAB(_m, UG_2D, _layer, 1, -/// 1) -////#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_UG(_m) -//// _DUNE_GDT_SPACES_CG_BIND_PDELAB_UG_LAYER(_m, leaf); -//// _DUNE_GDT_SPACES_CG_BIND_PDELAB_UG_LAYER(_m, level) -////#else -////#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_UG(_m, _layer) -////#endif - -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_YASP_LAYER(_m, _layer) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB(_m, YASP_1D_EQUIDISTANT_OFFSET, _layer, 1, 1);\ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB(_m, YASP_2D_EQUIDISTANT_OFFSET, _layer, 1, 1) -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_YASP(_m) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_YASP_LAYER(_m, leaf); \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_YASP_LAYER(_m, level) - -//#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALL(_m) \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALBERTA(_m); \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALU(_m); \ -// _DUNE_GDT_SPACES_CG_BIND_PDELAB_YASP(_m) -//// _DUNE_GDT_SPACES_CG_BIND_PDELAB_UG(_m); // <- does not work -//#else // HAVE_DUNE_PDELAB -#define _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALL(_m) -//#endif - -#define DUNE_GDT_SPACES_CG_BIND(_m) \ - _DUNE_GDT_SPACES_CG_BIND_FEM_ALL(_m); \ - _DUNE_GDT_SPACES_CG_BIND_PDELAB_ALL(_m) +#define DUNE_GDT_SPACES_CG_BIND(_m) _DUNE_GDT_SPACES_CG_BIND_GDT_ALL(_m); // end: this is what we need for the .so -- GitLab