aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreschnett <eschnett@7842ec3a-9562-4be5-9c5b-06ba18f2b668>2013-03-08 20:31:58 +0000
committereschnett <eschnett@7842ec3a-9562-4be5-9c5b-06ba18f2b668>2013-03-08 20:31:58 +0000
commit8a901ab68e3f0da1faad2e339e43dfe54d008c28 (patch)
tree769a12ce5b6de2ac4eae04b6a06c2801cff34471
parentad5025fbad5a8be6f6f1c13c70443c432fd6d871 (diff)
Replace Cactus complex number type with C/C++ complex numbersHEADmaster
Map CCTK_COMPLEX to "double complex" in C, and "complex<double>" in C++. (It is already mapped to "double complex" in Fortran.) Update type definitions. Re-implement Cactus complex number math functions by calling the respective C functions. Update thorn that access real and imaginary parts of complex numbers to use standard-conforming methods instead. git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGHIO/IOHDF5Util/trunk@165 7842ec3a-9562-4be5-9c5b-06ba18f2b668
-rw-r--r--src/Startup.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/Startup.c b/src/Startup.c
index 6d8235a..76d3459 100644
--- a/src/Startup.c
+++ b/src/Startup.c
@@ -194,32 +194,32 @@ static void *IOHDF5Util_SetupGH (tFleshConfig *config, int conv_level, cGH *GH)
HDF5_ERROR (myGH->HDF5_COMPLEX =
H5Tcreate (H5T_COMPOUND, sizeof (CCTK_COMPLEX)));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX, "real",
- offsetof (CCTK_COMPLEX, Re), HDF5_REAL));
+ 0, HDF5_REAL));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX, "imag",
- offsetof (CCTK_COMPLEX, Im), HDF5_REAL));
+ sizeof (CCTK_REAL), HDF5_REAL));
#ifdef CCTK_REAL4
HDF5_ERROR (myGH->HDF5_COMPLEX8 =
H5Tcreate (H5T_COMPOUND, sizeof (CCTK_COMPLEX8)));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX8, "real",
- offsetof (CCTK_COMPLEX8, Re), HDF5_REAL4));
+ 0, HDF5_REAL4));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX8, "imag",
- offsetof (CCTK_COMPLEX8, Im), HDF5_REAL4));
+ sizeof (CCTK_REAL4), HDF5_REAL4));
#endif
#ifdef CCTK_REAL8
HDF5_ERROR (myGH->HDF5_COMPLEX16 =
H5Tcreate (H5T_COMPOUND, sizeof (CCTK_COMPLEX16)));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX16, "real",
- offsetof (CCTK_COMPLEX16, Re), HDF5_REAL8));
+ 0, HDF5_REAL8));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX16, "imag",
- offsetof (CCTK_COMPLEX16, Im), HDF5_REAL8));
+ sizeof (CCTK_REAL8), HDF5_REAL8));
#endif
#ifdef CCTK_REAL16
HDF5_ERROR (myGH->HDF5_COMPLEX32 =
H5Tcreate (H5T_COMPOUND, sizeof (CCTK_COMPLEX32)));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX32, "real",
- offsetof (CCTK_COMPLEX32, Re), HDF5_REAL16));
+ 0, HDF5_REAL16));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX32, "imag",
- offsetof (CCTK_COMPLEX32, Im), HDF5_REAL16));
+ sizeof (CCTK_REAL16), HDF5_REAL16));
#endif
/* predefine a C string datatype */