ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
inverse_matrix.h
Go to the documentation of this file.
1#ifndef INVERSE_MATRIX_H
2#define INVERSE_MATRIX_H
3
4#include "global_function.h"
5#include "global_variable.h"
6#include "complexmatrix.h"
7namespace ModuleBase
8{
9
11{
12 public:
13
16
18
20 void init( const int &dim_in);
21
22 private:
23 int dim=0;
24 double *e=nullptr;
25 int lwork=0;
26 std::complex<double> *work2=nullptr;
27 double* rwork=nullptr;
28 int info=0;
29 bool allocate=false; //mohan add 2012-04-02
30
32};
33
42void Inverse_Matrix_Real(const int dim, const double* in, double* out);
43}
44#endif
Definition complexmatrix.h:14
Definition inverse_matrix.h:11
ModuleBase::ComplexMatrix A
Definition inverse_matrix.h:17
bool allocate
Definition inverse_matrix.h:29
int lwork
Definition inverse_matrix.h:25
double * rwork
Definition inverse_matrix.h:27
int dim
Definition inverse_matrix.h:23
double * e
Definition inverse_matrix.h:24
void init(const int &dim_in)
Definition inverse_matrix.cpp:25
~Inverse_Matrix_Complex()
Definition inverse_matrix.cpp:14
void using_zheev(const ModuleBase::ComplexMatrix &in, ModuleBase::ComplexMatrix &out)
Definition inverse_matrix.cpp:57
Inverse_Matrix_Complex()
Definition inverse_matrix.cpp:10
int info
Definition inverse_matrix.h:28
ModuleBase::ComplexMatrix EA
Definition inverse_matrix.h:31
std::complex< double > * work2
Definition inverse_matrix.h:26
Definition array_pool.h:6
void Inverse_Matrix_Real(const int dim, const double *in, double *out)
computes the inverse of a dim*dim real matrix "in" using LAPACK routines "out" contains the inverse o...
Definition inverse_matrix.cpp:77