From d353ca5d59a0d300d9bec27ed4abf509604129d1 Mon Sep 17 00:00:00 2001 From: Timo Heister Date: Sat, 5 Sep 2015 12:20:52 -0400 Subject: [PATCH] new .inst splitting insolution_transfer.cc --- source/numerics/CMakeLists.txt | 1 - source/numerics/solution_transfer.cc | 13 +++---------- source/numerics/solution_transfer.inst.in | 8 +------- source/numerics/solution_transfer_inst2.cc | 4 +--- source/numerics/solution_transfer_inst3.cc | 4 +--- source/numerics/solution_transfer_inst4.cc | 22 ---------------------- 6 files changed, 6 insertions(+), 46 deletions(-) delete mode 100644 source/numerics/solution_transfer_inst4.cc diff --git a/source/numerics/CMakeLists.txt b/source/numerics/CMakeLists.txt index 086368040c..351c6c7c27 100644 --- a/source/numerics/CMakeLists.txt +++ b/source/numerics/CMakeLists.txt @@ -34,7 +34,6 @@ SET(_src solution_transfer.cc solution_transfer_inst2.cc solution_transfer_inst3.cc - solution_transfer_inst4.cc time_dependent.cc vector_tools_boundary.cc vector_tools_constraints.cc diff --git a/source/numerics/solution_transfer.cc b/source/numerics/solution_transfer.cc index 883ac6f43c..4bdc71814e 100644 --- a/source/numerics/solution_transfer.cc +++ b/source/numerics/solution_transfer.cc @@ -563,18 +563,11 @@ SolutionTransfer::Pointerstruct::memory_consumption () const } - /*-------------- Explicit Instantiations -------------------------------*/ -#ifdef SOLUTION_TRANSFER_INSTANTIATE_PART_TWO -#define DIM_A 3 -#define DIM_B 3 -#else -#define DIM_A 1 -#define DIM_B 2 +#define SPLIT_INSTANTIATIONS_COUNT 4 +#ifndef SPLIT_INSTANTIATIONS_INDEX +#define SPLIT_INSTANTIATIONS_INDEX 0 #endif - -// This file compiles the first quarter of the instantiations from solution_transfer.cc -// to reduce the compilation unit (and memory consumption) #include "solution_transfer.inst" DEAL_II_NAMESPACE_CLOSE diff --git a/source/numerics/solution_transfer.inst.in b/source/numerics/solution_transfer.inst.in index b451fcdec9..9004235b7a 100644 --- a/source/numerics/solution_transfer.inst.in +++ b/source/numerics/solution_transfer.inst.in @@ -15,17 +15,11 @@ for (VEC : SERIAL_VECTORS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) - { +{ #if deal_II_dimension <= deal_II_space_dimension -#if (deal_II_space_dimension == DIM_A) || (deal_II_space_dimension == DIM_B) - -#ifndef INSTANTIATE_HP_DH template class SolutionTransfer >; -#else template class SolutionTransfer >; #endif -#endif -#endif } diff --git a/source/numerics/solution_transfer_inst2.cc b/source/numerics/solution_transfer_inst2.cc index 42d15e4ae9..de2971ea4e 100644 --- a/source/numerics/solution_transfer_inst2.cc +++ b/source/numerics/solution_transfer_inst2.cc @@ -16,7 +16,5 @@ // This file compiles the second quarter of the instantiations from solution_transfer.cc // to reduce the compilation unit (and memory consumption) -//#define INSTANTIATE_HP_DH -#define SOLUTION_TRANSFER_INSTANTIATE_PART_TWO - +#define SPLIT_INSTANTIATIONS_INDEX 1 #include "solution_transfer.cc" diff --git a/source/numerics/solution_transfer_inst3.cc b/source/numerics/solution_transfer_inst3.cc index 1561709c14..45745e4365 100644 --- a/source/numerics/solution_transfer_inst3.cc +++ b/source/numerics/solution_transfer_inst3.cc @@ -16,7 +16,5 @@ // This file compiles the third quarter of the instantiations from solution_transfer.cc // to reduce the compilation unit (and memory consumption) -#define INSTANTIATE_HP_DH -//#define SOLUTION_TRANSFER_INSTANTIATE_PART_TWO - +#define SPLIT_INSTANTIATIONS_INDEX 2 #include "solution_transfer.cc" diff --git a/source/numerics/solution_transfer_inst4.cc b/source/numerics/solution_transfer_inst4.cc deleted file mode 100644 index ee267e7f69..0000000000 --- a/source/numerics/solution_transfer_inst4.cc +++ /dev/null @@ -1,22 +0,0 @@ -// --------------------------------------------------------------------- -// -// Copyright (C) 2013 - 2014 by the deal.II authors -// -// This file is part of the deal.II library. -// -// The deal.II library is free software; you can use it, redistribute -// it, and/or modify it under the terms of the GNU Lesser General -// Public License as published by the Free Software Foundation; either -// version 2.1 of the License, or (at your option) any later version. -// The full text of the license can be found in the file LICENSE at -// the top level of the deal.II distribution. -// -// --------------------------------------------------------------------- - -// This file compiles the fourth quarter of the instantiations from solution_transfer.cc -// to reduce the compilation unit (and memory consumption) - -#define INSTANTIATE_HP_DH -#define SOLUTION_TRANSFER_INSTANTIATE_PART_TWO - -#include "solution_transfer.cc" -- 2.39.5