Psi4
psimrcc/algebra_interface_mangle.h
Go to the documentation of this file.
1 /*
2  * @BEGIN LICENSE
3  *
4  * Psi4: an open-source quantum chemistry software package
5  *
6  * Copyright (c) 2007-2017 The Psi4 Developers.
7  *
8  * The copyrights for code used from other parties are included in
9  * the corresponding files.
10  *
11  * This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License as published by
13  * the Free Software Foundation; either version 2 of the License, or
14  * (at your option) any later version.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU General Public License for more details.
20  *
21  * You should have received a copy of the GNU General Public License along
22  * with this program; if not, write to the Free Software Foundation, Inc.,
23  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24  *
25  * @END LICENSE
26  */
27 
28 #ifndef _psi_src_bin_psimrcc_algebra_interface_mangle_h_
29 #define _psi_src_bin_psimrcc_algebra_interface_mangle_h_
30 
31 #ifndef FC_SYMBOL
32 #define FC_SYMBOL 2
33 #endif
34 
35 #ifdef USE_FCMANGLE_H
36 #include "FCMangle.h"
37 #define F_DAXPY FC_GLOBAL(daxpy, DAXPY)
38 #define F_DCOPY FC_GLOBAL(dcopy, DCOPY)
39 #define F_DGEMM FC_GLOBAL(dgemm, DGEMM)
40 #define F_DROT FC_GLOBAL(drot, DROT)
41 #define F_DSCAL FC_GLOBAL(dscal, DSCAL)
42 #define F_DGEMV FC_GLOBAL(dgemv, DGEMV)
43 #define F_DSPMV FC_GLOBAL(dfpmv, DSPMV)
44 #define F_DDOT FC_GLOBAL(ddot, DDOT)
45 #define F_DGEEV FC_GLOBAL(dgeev, DGEEV)
46 #define F_DGESV FC_GLOBAL(dgesv, DGESV)
47 #define F_DGETRF FC_GLOBAL(dgetrf, DGETRF)
48 #define F_DGETRI FC_GLOBAL(dgetri, DGETRI)
49 #define F_DGESVD FC_GLOBAL(dgesvd, DGESVD)
50 #define F_DSYEV FC_GLOBAL(dsyev, DSYEV)
51 #else // USE_FCMANGLE_H
52 #if FC_SYMBOL==2
53 #define F_DAXPY daxpy_
54 #define F_DCOPY dcopy_
55 #define F_DGEMM dgemm_
56 #define F_DROT drot_
57 #define F_DSCAL dscal_
58 #define F_DGEMV dgemv_
59 #define F_DSPMV dspmv_
60 #define F_DDOT ddot_
61 #define F_DGEEV dgeev_
62 #define F_DGESV dgesv_
63 #define F_DGETRF dgetrf_
64 #define F_DGETRI dgetri_
65 #define F_DGESVD dgesvd_
66 #define F_DSYEV dsyev_
67 #elif FC_SYMBOL==1
68 #define F_DAXPY daxpy
69 #define F_DCOPY dcopy
70 #define F_DGEMM dgemm
71 #define F_DROT drot
72 #define F_DSCAL dscal
73 #define F_DGEMV dgemv
74 #define F_DSPMV dspmv
75 #define F_DDOT ddot
76 #define F_DGEEV dgeev
77 #define F_DGESV dgesv
78 #define F_DGETRF dgetrf
79 #define F_DGETRI dgetri
80 #define F_DGESVD dgesvd
81 #define F_DSYEV dsyev
82 #elif FC_SYMBOL==3
83 #define F_DAXPY DAXPY
84 #define F_DCOPY DCOPY
85 #define F_DGEMM DGEMM
86 #define F_DROT DROT
87 #define F_DSCAL DSCAL
88 #define F_DGEMV DGEMV
89 #define F_DSPMV DSPMV
90 #define F_DDOT DDOT
91 #define F_DGEEV DGEEV
92 #define F_DGESV DGESV
93 #define F_DGETRF DGETRF
94 #define F_DGETRI DGETRI
95 #define F_DGESVD DGESVD
96 #define F_DSYEV DSYEV
97 #elif FC_SYMBOL==4
98 #define F_DAXPY DAXPY_
99 #define F_DCOPY DCOPY_
100 #define F_DGEMM DGEMM_
101 #define F_DROT DROT_
102 #define F_DSCAL DSCAL_
103 #define F_DGEMV DGEMV_
104 #define F_DSPMV DSPMV_
105 #define F_DDOT DDOT_
106 #define F_DGEEV DGEEV_
107 #define F_DGESV DGESV_
108 #define F_DGETRF DGETRF_
109 #define F_DGETRI DGETRI_
110 #define F_DGESVD DGESVD_
111 #define F_DSYEV DSYEV_
112 #endif // FC_SYMBOL
113 #endif // USE_FCMANGLE_H
114 
115 #endif // _psi_src_bin_psimrcc_algebra_interface_mangle_h_