ergo
Main Page
Namespaces
Classes
Files
File List
File Members
integral_matrix_wrappers.h
Go to the documentation of this file.
1
/* Ergo, version 3.2, a program for linear scaling electronic structure
2
* calculations.
3
* Copyright (C) 2012 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
#ifndef INTEGRAL_MATRIX_WRAPPERS_HEADER
29
#define INTEGRAL_MATRIX_WRAPPERS_HEADER
30
31
#include "
basisinfo.h
"
32
#include "
matrix_typedefs.h
"
33
#include "
integrals_2el.h
"
34
35
36
int
37
compute_V_sparse
(
const
BasisInfoStruct
& basisInfo,
38
const
IntegralInfo
& integralInfo,
39
const
Molecule
& molecule,
40
ergo_real
threshold,
41
ergo_real
boxSize,
42
symmMatrix
& V,
43
std::vector<int>
const
& permutationHML);
44
45
46
int
47
compute_overlap_matrix_sparse
(
const
BasisInfoStruct
& basisInfo,
48
symmMatrix
& S_symm,
49
std::vector<int>
const
& permutationHML);
50
51
52
int
53
compute_operator_matrix_sparse_symm
(
const
BasisInfoStruct
& basisInfo,
54
int
pow_x,
55
int
pow_y,
56
int
pow_z,
57
symmMatrix
& A_symm,
58
std::vector<int>
const
& permutationHML);
59
60
61
int
62
compute_J_by_boxes_sparse
(
const
BasisInfoStruct
& basisInfo,
63
const
IntegralInfo
& integralInfo,
64
const
JK::Params
& J_K_params,
65
symmMatrix
& J,
66
const
symmMatrix
& densityMatrix_sparse,
67
std::vector<int>
const
& permutationHML);
68
69
70
int
71
compute_K_by_boxes_sparse
(
const
BasisInfoStruct
& basisInfo,
72
const
IntegralInfo
& integralInfo,
73
const
JK::ExchWeights
& CAM_params,
74
const
JK::Params
& J_K_params,
75
symmMatrix
& K,
76
symmMatrix
& densityMatrix_sparse,
77
std::vector<int>
const
& permutationHML,
78
std::vector<int>
const
& inversePermutationHML);
79
80
int
81
compute_K_by_boxes_sparse_nosymm
(
const
BasisInfoStruct
& basisInfo,
82
const
IntegralInfo
& integralInfo,
83
const
JK::ExchWeights
& CAM_params,
84
const
JK::Params
& J_K_params,
85
normalMatrix
& K,
86
normalMatrix
& densityMatrix_sparse,
87
std::vector<int>
const
& permutationHML,
88
std::vector<int>
const
& inversePermutationHML);
89
90
91
#endif
source
utilities
integral_matrix_wrappers.h
Generated on Thu Jan 31 2013 18:51:22 for ergo by
1.8.1.1