JDFTx  1.1.0
Polarizability.h
1 /*-------------------------------------------------------------------
2 Copyright 2013 Ravishankar Sundararaman, Kathleen Schwarz
3 
4 This file is part of JDFTx.
5 
6 JDFTx 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 JDFTx 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 JDFTx. If not, see <http://www.gnu.org/licenses/>.
18 -------------------------------------------------------------------*/
19 
20 #ifndef JDFTX_ELECTRONIC_POLARIZABILITY_H
21 #define JDFTX_ELECTRONIC_POLARIZABILITY_H
22 
23 #include <electronic/common.h>
24 #include <core/vector3.h>
25 
28 {
34  }
35  eigenBasis;
36 
37  double Ecut;
38  int nEigs;
39 
41 
43 
45  void dump(const Everything& e);
46 
47 private:
48  string dkFilename(int ik, string varName) const;
49  friend class PairDensityCalculator;
50 };
51 
52 #endif // JDFTX_ELECTRONIC_POLARIZABILITY_H
Charge response to total electrostatic potential.
Definition: Polarizability.h:33
Charge response to external electrostatic potential.
Definition: Polarizability.h:32
Calculate the polarizability in a convenient eigenbasis.
Definition: Polarizability.h:27
EigenBasis
Response-matrix whose eigen-basis to use for final output.
Definition: Polarizability.h:30
Non-interacting response of Kohn-Sham system.
Definition: Polarizability.h:31
double Ecut
energy-cutoff for occupied-valence pair densities (if zero, 4*Ecut of wavefunctions) ...
Definition: Polarizability.h:37
vector3 dk
k-point difference at which to obtain results
Definition: Polarizability.h:40
Definition: Everything.h:41
int nEigs
number of eigenvectors in output (if zero, output all)
Definition: Polarizability.h:38
string dkFilenamePattern
if non-null, read wavefunctions and eigenvalues for offset states form here
Definition: Polarizability.h:42
void dump(const Everything &e)
compute and dump polarizability eigenvectors and matrix elements