Hi,
I'm currently working on a thorn development project where it would be helpful to be able to have a mix of single-precision grid functions and double-precision grid functions (a very unusual need, I know).
When I had my thorn allocate a grid function of type CCTK_REAL4, I got a message upon running my configurations that I needed to enable support for this type in Carpet. After reading through the Carpet documentation and then digging deep into the source code for CarpetLib, I discovered that there seem to be flags to compile Carpet with support for different types. I passed -DCARPET_ALL_REAL in as part of CPPFLAGS in my optionlist, but attempting to compile with other real types leads to compile-time errors about undefined functions: apparently headers for prolongation functions for all the types are generated, but somehow the corresponding definitions aren't being be linked correctly.
I'm not sure what is going wrong, but I am also unable to find any examples of how support for other types is supposed to be enabled, so I am unsure if I am doing this right.
So my question is: what is the status of support for grid functions of types besides CCTK_REAL8 in Carpet? Does this feature work, and if so, how can I enable support for all Cactus-supported real types in Carpet?
Cheers,
— Erik Wessel
Department of Physics
University of Arizona