ergo
lin_trans.h
Go to the documentation of this file.
1 /* Ergo, version 3.4, a program for linear scaling electronic structure
2  * calculations.
3  * Copyright (C) 2014 Elias Rudberg, Emanuel H. Rubensson, and Pawel Salek.
4  *
5  * This program is free software: you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation, either version 3 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17  *
18  * Primary academic reference:
19  * Kohn−Sham Density Functional Theory Electronic Structure Calculations
20  * with Linearly Scaling Computational Time and Memory Usage,
21  * Elias Rudberg, Emanuel H. Rubensson, and Pawel Salek,
22  * J. Chem. Theory Comput. 7, 340 (2011),
23  * <http://dx.doi.org/10.1021/ct100611z>
24  *
25  * For further information about Ergo, see <http://www.ergoscf.org>.
26  */
27 
28 #if !defined(_LIN_TRANS_H_)
29 #define _LIN_TRANS_H_ 1
30 
31 #ifdef __cplusplus
32 #define EXTERN_C extern "C"
33 #else
34 #define EXTERN_C
35 #endif
36 
38  const Molecule& mol,
39  const Dft::GridParams& gss,
40  const real *dens,
41  const real *vec, real* trans_vec, int nThreads);
43  const Molecule& mol,
44  const Dft::GridParams& gss,
45  const real *dens,
46  const real *vec, real* trans_vec);
47 #endif
A structure describing the grid settings.
Definition: grid_params.h:49
Representation of a molecule as a set of nuclei and total charge.
Definition: molecule.h:76
#define EXTERN_C
Definition: lin_trans.h:34
Definition: basisinfo.h:111
ergo_real real
Definition: cubature_rules.h:33
EXTERN_C real dft_lin_respao(const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, const real *dens, const real *vec, real *trans_vec, int nThreads)
dft_lin_respao performs the transformation of given transition density
Definition: lin_trans.cc:247
EXTERN_C real dft_lin_resp_mt(const BasisInfoStruct &bis, const Molecule &mol, const Dft::GridParams &gss, const real *dens, const real *vec, real *trans_vec)
Definition: lin_trans.cc:339