aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetIOHDF5
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@gmail.com>2013-03-08 15:33:39 -0500
committerErik Schnetter <schnetter@gmail.com>2013-03-08 15:33:39 -0500
commit235533f662769910df4d6cc32605cc317a3306a1 (patch)
treeabda0de249832f6f872568412639c7171a5ce5e8 /Carpet/CarpetIOHDF5
parent45077d797fb6e86e2b172156c899ee3be6f97424 (diff)
Replace Cactus complex number type with C/C++ complex numbers
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.
Diffstat (limited to 'Carpet/CarpetIOHDF5')
-rw-r--r--Carpet/CarpetIOHDF5/src/CarpetIOHDF5.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/Carpet/CarpetIOHDF5/src/CarpetIOHDF5.cc b/Carpet/CarpetIOHDF5/src/CarpetIOHDF5.cc
index 927c9740d..feccb8fbe 100644
--- a/Carpet/CarpetIOHDF5/src/CarpetIOHDF5.cc
+++ b/Carpet/CarpetIOHDF5/src/CarpetIOHDF5.cc
@@ -445,32 +445,32 @@ static void* SetupGH (tFleshConfig* const fleshconfig,
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), H5T_NATIVE_FLOAT));
+ 0, H5T_NATIVE_FLOAT));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX8, "imag",
- offsetof (CCTK_COMPLEX8, Im), H5T_NATIVE_FLOAT));
+ sizeof (CCTK_REAL4), H5T_NATIVE_FLOAT));
#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), H5T_NATIVE_DOUBLE));
+ 0, H5T_NATIVE_DOUBLE));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX16, "imag",
- offsetof (CCTK_COMPLEX16, Im), H5T_NATIVE_DOUBLE));
+ sizeof (CCTK_REAL8), H5T_NATIVE_DOUBLE));
#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), H5T_NATIVE_LDOUBLE));
+ 0, H5T_NATIVE_LDOUBLE));
HDF5_ERROR (H5Tinsert (myGH->HDF5_COMPLEX32, "imag",
- offsetof (CCTK_COMPLEX32, Im), H5T_NATIVE_LDOUBLE));
+ sizeof (CCTK_REAL16), H5T_NATIVE_LDOUBLE));
#endif
return (myGH);