aboutsummaryrefslogtreecommitdiff
path: root/src/GRHydro_RegisterMask.c
diff options
context:
space:
mode:
authorbmundim <bmundim@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45>2010-05-02 20:59:32 +0000
committerbmundim <bmundim@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45>2010-05-02 20:59:32 +0000
commit74fb1e6ea34d6e03a35ff6c158f455c39904bf5a (patch)
treed8f9b95f30517e9bafd8c67301c7383bc8beb76e /src/GRHydro_RegisterMask.c
parent291e94d06b30046227fb075cbfa97b9656339d5a (diff)
file/parameter string replacement from whisky to GRHydro
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinEvolve/GRHydro/trunk@112 c83d129a-5a75-4d5a-9c4d-ed3a5855bf45
Diffstat (limited to 'src/GRHydro_RegisterMask.c')
-rw-r--r--src/GRHydro_RegisterMask.c89
1 files changed, 89 insertions, 0 deletions
diff --git a/src/GRHydro_RegisterMask.c b/src/GRHydro_RegisterMask.c
new file mode 100644
index 0000000..d440d4b
--- /dev/null
+++ b/src/GRHydro_RegisterMask.c
@@ -0,0 +1,89 @@
+ /*@@
+ @file GRHydro_RegisterMask.c
+ @date Sun Jan 26 01:55:25 2003
+ @author Ian Hawke
+ @desc
+ Routines to register states with SpaceMask.
+ @enddesc
+ @@*/
+
+#include "cctk.h"
+#include "cctk_Parameters.h"
+#include "cctk_Arguments.h"
+
+#include "SpaceMask.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+
+ /*@@
+ @routine GRHydro_RegisterMask
+ @date Sun Jan 26 01:56:06 2003
+ @author
+ @desc
+ Register the different mask states with the SpaceMask thorn.
+
+ At the moment, the recognized states and values are
+
+ Hydro_Atmosphere (in_atmosphere, not_in_atmosphere)
+ Hydro_RiemannProblem (trivial, not_trivial)
+
+ @enddesc
+ @calls
+ @calledby
+ @history
+
+ @endhistory
+
+@@*/
+
+int GRHydro_RegisterMask(void)
+{
+
+ DECLARE_CCTK_PARAMETERS;
+
+ int ierr;
+
+ const char *atmosphere_list[2] = {"in_atmosphere","not_in_atmosphere"};
+ const char *rp_list[2] = {"trivial","not_trivial"};
+
+ ierr = SpaceMask_RegisterType("Hydro_Atmosphere", 2, atmosphere_list);
+ if (ierr)
+ {
+ CCTK_WARN(0, "Failed to register the atmosphere with the mask!");
+ }
+
+ ierr = SpaceMask_RegisterType("Hydro_RiemannProblemX", 2, rp_list);
+ if (ierr)
+ {
+ CCTK_WARN(0, "Failed to register the x Riemann Problem with the mask!");
+ }
+
+ ierr = SpaceMask_RegisterType("Hydro_RiemannProblemY", 2, rp_list);
+ if (ierr)
+ {
+ CCTK_WARN(0, "Failed to register the y Riemann Problem with the mask!");
+ }
+
+ ierr = SpaceMask_RegisterType("Hydro_RiemannProblemZ", 2, rp_list);
+ if (ierr)
+ {
+ CCTK_WARN(0, "Failed to register the z Riemann Problem with the mask!");
+ }
+
+ return 0;
+}
+
+void GRHydro_SetupDescriptors(CCTK_ARGUMENTS)
+{
+
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ *atmosphere_field_descriptor=SpaceMask_GetTypeBits("Hydro_Atmosphere");
+ *atmosphere_atmosp_descriptor=SpaceMask_GetStateBits("Hydro_Atmosphere",
+ "in_atmosphere");
+ *atmosphere_normal_descriptor = SpaceMask_GetStateBits("Hydro_Atmosphere",
+ "not_in_atmosphere");
+}
+