ergo
constants.h
Go to the documentation of this file.
1 /* Ergo, version 3.8, a program for linear scaling electronic structure
2  * calculations.
3  * Copyright (C) 2019 Elias Rudberg, Emanuel H. Rubensson, Pawel Salek,
4  * and Anastasia Kruchinina.
5  *
6  * This program is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program. If not, see <http://www.gnu.org/licenses/>.
18  *
19  * Primary academic reference:
20  * Ergo: An open-source program for linear-scaling electronic structure
21  * calculations,
22  * Elias Rudberg, Emanuel H. Rubensson, Pawel Salek, and Anastasia
23  * Kruchinina,
24  * SoftwareX 7, 107 (2018),
25  * <http://dx.doi.org/10.1016/j.softx.2018.03.005>
26  *
27  * For further information about Ergo, see <http://www.ergoscf.org>.
28  */
29 
38 #ifndef HEADER_CONSTANTS
39 #define HEADER_CONSTANTS
40 
41 #define ORDER 2
42 #define C_SP2 6.8872
44 #endif //HEADER_CONSTANTS
45 
write_matrix_to_bin
void write_matrix_to_bin(const char *filename, const std::vector< int > &I, const std::vector< int > &J, const std::vector< real > &val, const int &N)
Definition: files_sparse_bin.cc:43
get_matrix_from_full
void get_matrix_from_full(std::vector< real > const &A, int N, int M, symmMatrix &X)
Definition: test.cc:73
files_sparse.h
File containing declarations of functions for reading/writing sparse matrices from/to mtx (MatrixMark...
integral_matrix_wrappers.h
Wrapper routines for different parts of the integral code, including conversion of matrices from/to t...
MatrixTriangular.h
realtype.h
Definition of the main floating-point datatype used; the ergo_real type.
init_matrix
void init_matrix(Matrix &X, const int N, const int M)
Create hierarchical matrix structure.
Definition: test.cc:55
eigvec::computeEigenvectors
int computeEigenvectors(const MatrixType &A, Treal tol, std::vector< Treal > &eigVal, std::vector< VectorType > &eigVec, int number_of_eigenvalues_to_compute, std::string method, std::vector< int > &num_iter, int maxit=200, bool do_deflation=false)
Function for choosing method for computing eigenvectors.
Definition: get_eigenvectors.h:232
Vector.h
main
int main()
Definition: test.cc:81
ergo_real
double ergo_real
Definition: realtype.h:69
mat::Params::setNProcs
static void setNProcs(unsigned int const nP)
Definition: matInclude.h:112
read_matrix_from_mtx
int read_matrix_from_mtx(const char *filename, std::vector< int > &I, vector< int > &J, vector< real > &val, int &N, int &M)
Definition: files_sparse.cc:48
symmMatrix
MatrixSymmetric< real, matri > symmMatrix
Definition: test_LanczosSeveralLargestEig.cc:69
Matrix.h
real
ergo_real real
Definition: test.cc:46
SCALAR_TOL
#define SCALAR_TOL
Definition: test.cc:48
rows
mat::SizesAndBlocks rows
Definition: test.cc:51
template_blas_fabs
Treal template_blas_fabs(Treal x)
mat::Params::setMatrixParallelLevel
static void setMatrixParallelLevel(unsigned int const mPL)
Definition: matInclude.h:129
B
#define B
mat::VectorGeneral::resetSizesAndBlocks
void resetSizesAndBlocks(SizesAndBlocks const &newRows)
Definition: VectorGeneral.h:51
matrix_utilities.h
Utilities related to the hierarchical matrix library (HML), including functions for setting up permut...
mat::VectorGeneral
Definition: MatrixBase.h:55
generalVector
mat::VectorGeneral< ergo_real, Vectorrr > generalVector
Definition: matrix_typedefs.h:76
cols
mat::SizesAndBlocks cols
Definition: test.cc:52
A
#define A
matrix_typedefs.h
Header file with typedefs for matrix and vector types. The levels of hierarchic matrices are defined ...
mat::SizesAndBlocks
Describes dimensions of matrix and its blocks on all levels.
Definition: SizesAndBlocks.h:45
SizesAndBlocks.h
Class used to keep track of the block sizes used at different levels in the hierarchical matrix data ...
read_matrix_from_bin
void read_matrix_from_bin(const char *filename, std::vector< int > &I, std::vector< int > &J, std::vector< real > &val, int &N, int &M)
Read data from the binary file.
Definition: files_sparse_bin.cc:147
files_sparse_bin.h
File containing declaration of functions for reading/writing sparse matrices from/to binary files.
MatrixSymmetric.h
files_dense.h
File containing declaration of functions for reading/writing dense matrices and vectors.
MatrixGeneral.h
VectorGeneral.h
get_eigenvectors.h
Defined namespace eigvec containing functions for computing largest eigenvalues and corresponding eig...
output.h
Functionality for writing output messages to a text file.
write_matrix_to_mtx
int write_matrix_to_mtx(const char *filename, const vector< int > &I, const vector< int > &J, const vector< real > &val, const int &N)
Definition: files_sparse.cc:151