aboutsummaryrefslogtreecommitdiff
path: root/src/ParamCheck.c
blob: d8c838da98f88018592fbcd9071a3e117da6a04d (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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
 /*@@
   @file      ParamCheck.c
   @date      Ues April 30 2002
   @author    Gabrielle Allen
   @desc 
   Parameter checking stuff for Exact
   @enddesc
   @version $Header$
 @@*/

#include "cctk.h"

#include "cctk_Arguments.h"
#include "cctk_Parameters.h"

static const char *rcsid = "$Header$";

CCTK_FILEVERSION(AEIDevelopment_Exact_ParamCheck_c)

/********************************************************************
 *********************     Local Data Types   ***********************
 ********************************************************************/

/********************************************************************
 ********************* Local Routine Prototypes *********************
 ********************************************************************/

/********************************************************************
 ***************** Scheduled Routine Prototypes *********************
 ********************************************************************/

void Exact_ParamCheck(CCTK_ARGUMENTS);

/********************************************************************
 ********************* Other Routine Prototypes *********************
 ********************************************************************/

/********************************************************************
 *********************     Local Data   *****************************
 ********************************************************************/

/********************************************************************
 *********************     External Routines   **********************
 ********************************************************************/

 /*@@
   @routine    Exact_ParamCheck
   @date       Tue April 30 2002
   @author     Tom Goodale
   @desc 
   Scheduled routine to detect invalid parameter settings.
   @enddesc 
   @calls     
   @calledby   
   @history 
   @hdate      Tue Jun 11 18:25:49 CEST 2002
   @hauthor    Jonathan Thornburg
   @desc       Add a test that we're not trying to set the shift
               with storage *not* present for it
   @enddesc
   @endhistory 
 
 @@*/
void Exact_ParamCheck(CCTK_ARGUMENTS)
{
  DECLARE_CCTK_PARAMETERS;
/*
  if(! CCTK_EQUALS(metric_type, "physical"))
  {
    CCTK_PARAMWARN("Unknown ADMBase::metric_type - known types are \"physical\"");
  }
*/
  if (    (CCTK_EQUALS(shift_evolution_method, "exact")
	|| CCTK_EQUALS(shift_evolution_method, "slice")
	|| CCTK_EQUALS(initial_data, "slice"))
       && CCTK_EQUALS(initial_shift, "none") )
  {
    CCTK_PARAMWARN(
"\n"
"   You set  ADMBase::shift_evolution_method = \"exact\" , which means\n"
"   this thorn (Exact) should set the shift vector from the exact solution.\n"
"   But you also set  ADMBase::initial_shift = \"none\" , which means\n"
"   storage for the shift vector is turned off!  You need to either specify\n"
"   a different  ADMBase::shift_evolution_method , and/or turn on storage\n"
"   for the shift vector by setting  ADMBase::initial_shift  to something\n"
"   other than \"none\".\n"
		  );
  }
}

/********************************************************************
 *********************     Local Routines   *************************
 ********************************************************************/