aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetRegrid2/src/paramcheck.cc
blob: 0ee09ca23cae405dcbad9d826cc12f1f155ab066 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <cctk.h>
#include <cctk_Arguments.h>
#include <cctk_Parameters.h>

#include <carpet.hh>



namespace CarpetRegrid2 {
  
  using namespace Carpet;
  
  
  
  extern "C" {
    void
    CarpetRegrid2_ParamCheck (CCTK_ARGUMENTS);
  }
  
  
  
  void
  CarpetRegrid2_ParamCheck (CCTK_ARGUMENTS)
  {
    DECLARE_CCTK_ARGUMENTS;
    DECLARE_CCTK_PARAMETERS;
    
    if ((num_centres >= 1 and num_levels_1 > maxreflevels) or
        (num_centres >= 2 and num_levels_2 > maxreflevels) or
        (num_centres >= 3 and num_levels_3 > maxreflevels) or
        (num_centres >= 4 and num_levels_4 > maxreflevels) or
        (num_centres >= 5 and num_levels_5 > maxreflevels) or
        (num_centres >= 6 and num_levels_6 > maxreflevels) or
        (num_centres >= 7 and num_levels_7 > maxreflevels) or
        (num_centres >= 8 and num_levels_8 > maxreflevels) or
        (num_centres >= 9 and num_levels_9 > maxreflevels) or
        (num_centres >= 10 and num_levels_10 > maxreflevels))
    {
      CCTK_PARAMWARN ("The number of requested refinement levels is larger than the maximum number of levels specified by Carpet::max_refinement_levels");
    }
  }
  
} // namespace CarpetRegrid2