ABACUS
develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
source
source_lcao
module_deepks
deepks_orbital.h
Go to the documentation of this file.
1
#ifndef DEEPKS_ORBITAL_H
2
#define DEEPKS_ORBITAL_H
3
4
#ifdef __MLALGO
5
6
#include "
source_base/complexmatrix.h
"
7
#include "
source_base/intarray.h
"
8
#include "
source_base/matrix.h
"
9
#include "
source_base/timer.h
"
10
#include "
source_basis/module_ao/parallel_orbitals.h
"
11
#include "
source_estate/module_dm/density_matrix.h
"
12
13
namespace
DeePKS_domain
14
{
15
//------------------------
16
// deepks_orbital.cpp
17
//------------------------
18
19
// This file contains subroutines for calculating O_delta, i.e., corrections of the bandgap,
20
// which is defind as sum_mu,nu rho^{hl}_mu,nu <chi_mu|alpha>V(D)<alpha|chi_nu>
21
// where rho^{hl}_mu,nu = C_{L\mu}C_{L\nu} - C_{H\mu}C_{H\nu}, L for LUMO, H for HOMO
22
23
// There are 1 subroutine in this file:
24
// 1. cal_o_delta, which is used for O_delta calculation
25
26
template
<
typename
TK,
typename
TH>
27
void
cal_o_delta
(
const
std::vector<TH>& dm_hl,
28
const
std::vector<std::vector<TK>>& h_delta,
29
// std::vector<double>& o_delta,
30
ModuleBase::matrix
& o_delta,
31
const
Parallel_Orbitals
& pv,
32
const
int
nks,
33
const
int
nspin);
34
}
// namespace DeePKS_domain
35
36
#endif
37
#endif
ModuleBase::matrix
Definition
matrix.h:19
Parallel_Orbitals
Definition
parallel_orbitals.h:9
complexmatrix.h
density_matrix.h
intarray.h
matrix.h
DeePKS_domain
Definition
deepks_basic.h:14
DeePKS_domain::cal_o_delta
void cal_o_delta(const std::vector< TH > &dm_hl, const std::vector< std::vector< TK > > &h_delta, ModuleBase::matrix &o_delta, const Parallel_Orbitals &pv, const int nks, const int nspin)
Definition
deepks_orbital.cpp:10
parallel_orbitals.h
timer.h
Generated by
1.9.8