diff options
author | bmundim <bmundim@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45> | 2010-05-02 20:59:32 +0000 |
---|---|---|
committer | bmundim <bmundim@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45> | 2010-05-02 20:59:32 +0000 |
commit | 74fb1e6ea34d6e03a35ff6c158f455c39904bf5a (patch) | |
tree | d8f9b95f30517e9bafd8c67301c7383bc8beb76e /src/GRHydro_RegisterMask.c | |
parent | 291e94d06b30046227fb075cbfa97b9656339d5a (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.c | 89 |
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"); +} + |