diff --git a/src/include/types.h b/src/include/types.h new file mode 100644 index 0000000000000000000000000000000000000000..148cf2e2640458f1cf388061f7bb50a6cbbe6ff6 --- /dev/null +++ b/src/include/types.h @@ -0,0 +1,28 @@ +/* Distributed under the terms of GPLv3 or later. See COPYING for details. */ + +/*! \file types.h + * + * \brief Definition of fundamental types in use. + */ + +#ifndef INCLUDE_TYPES_H_ +#define INCLUDE_TYPES_H_ + +#include <complex.h> + +typedef __complex__ double dcomplex; + +/*! \brief Get the real part of a complex number. + * + * \param z: `complex double` The argument of the function. + * \return rz: `double` The real part of the argument. + */ +double real(dcomplex z) { return __real__ z; } + +/*! \brief Get the imaginary part of a complex number. + * + * \param z: `complex double` The argument of the function. + * \return iz: `double` The imaginary part of the argument. + */ +double imag(dcomplex z) { return __imag__ z; } +#endif