Octopus
complex.F90
Go to the documentation of this file.
1!! Copyright (C) 2002-2006 M. Marques, A. Castro, A. Rubio, G. Bertsch
2!!
3!! This program is free software; you can redistribute it and/or modify
4!! it under the terms of the GNU General Public License as published by
5!! the Free Software Foundation; either version 2, or (at your option)
6!! any later version.
7!!
8!! This program is distributed in the hope that it will be useful,
9!! but WITHOUT ANY WARRANTY; without even the implied warranty of
10!! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11!! GNU General Public License for more details.
12!!
13!! You should have received a copy of the GNU General Public License
14!! along with this program; if not, write to the Free Software
15!! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
16!! 02110-1301, USA.
17!!
18
19#define R_TCOMPLEX 1
20
21#define R_TYPE complex(real64)
22#define R_BASE real(real64)
23#define R_CTYPE complex(real64)
24#define R_DOUBLE complex(real64)
25#define R_MPITYPE MPI_DOUBLE_COMPLEX
26#define R_TYPE_VAL TYPE_CMPLX
27#define R_TYPE_GPU complex<double>
28#define R_TYPE_IOBINARY TYPE_DOUBLE_COMPLEX
29#define R_TOTYPE(x) cmplx(x, M_ZERO, real64)
30
31#define R_CONJ(x) conjg(x)
32#define R_REAL(x) real(x, real64)
33#define R_AIMAG(x) aimag(x)
34
35#define R_SIZEOF 16
36#define R_ADD 2
37#define R_MUL 6
38
39#define X(x) z ## x
40#define pX(x) pz ## x
41#define aX(x,y) x ## z ## y
42
43
44!! Local Variables:
45!! mode: f90
46!! coding: utf-8
47!! End: