Runtime Parameters#
Overview#
Runtime parameters and options in LibRPA are generally managed through the LibrpaOptions object.
When using the API, you can directly assign values to the corresponding attributes to control the runtime behavior of LibRPA. API defaults are set by librpa_init_options(), the C++ librpa::Options constructor, or
opts%init()in the Fortran API.When using the driver, parameters are read from a file named
librpa.inin the working directory, using the syntaxkey = value. For example:task = rpa input_dir = ../librpa_dataset nfreq = 16 cs_threshold = 1e-4
If
librpa.inis not found, the driver stops with an error. Unlike the API, the driver requirestaskto be explicitly specified. For all other parameters, default values are used when the corresponding keywords are not provided. Please refer to manual page of driver usage for more information.
Note
Rows marked Experimental expose development, diagnostic, or less-tested code paths.
Use them as opt-in features and validate results against reference calculations before production use.
Blank status entries indicate the regular, documented path.
For API use, switch values are set with LIBRPA_SWITCH_ON and LIBRPA_SWITCH_OFF in C/C++.
The Fortran wrapper exposes these fields as logical values.
Additional Parameters for Driver#
These parameters are available only through the standalone driver.
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Task type |
string |
required ( |
|
|
Physical constants source |
string |
|
|
|
Input directory to find and read the AO dataset |
string |
|
|
|
Screening threshold when reading the RI coefficient data |
double |
1e-6 |
|
|
Read wavefunctions in spinor format |
bool |
|
Experimental |
|
Output quasiparticle energies for external BSE workflows |
bool |
|
Experimental |
|
Output GW energies for HamGNN machine-learning workflows |
bool |
|
Experimental |
|
Use PyATB mean-field data for dielectric head/wing calculations |
bool |
|
Experimental |
|
Output GW spectral-function data |
bool |
|
Experimental |
|
Starting frequency for spectral-function output |
double |
0.0 |
Experimental |
|
Ending frequency for spectral-function output |
double |
1.0 |
Experimental |
|
Frequency step for spectral-function output |
double |
0.1 |
Experimental |
|
Broadening/shift used for Green’s function in spectral output |
double |
0.01 |
Experimental |
|
Broadening/shift used for correlation self-energy in spectral output |
double |
0.01 |
Experimental |
|
First state index for spectral-function output |
int |
0 |
Experimental |
|
Last state index for spectral-function output |
int |
10000 |
Experimental |
Common Parameter Settings for LibRPA#
The default values below are API defaults unless a driver-specific default is listed.
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Output directory for results |
string |
API: |
|
|
Parallel scheme of LibRPA |
enum/string |
API: |
|
|
Verbosity level |
int/string |
API: |
|
|
Real-space Coulomb matrix screening threshold |
double |
0.0 |
|
|
Use k-point-parallel distribution of SCF eigenvectors |
bool |
|
Experimental |
|
Type of time-frequency integration grid |
enum/string |
API: |
|
|
Number of frequency integration grid points |
int |
6 |
|
|
Minimum frequency for grid (Hartree) |
double |
0.005 |
|
|
Frequency interval for even-spaced grid (Hartree) |
double |
0.0 |
|
|
Maximum frequency for grid (Hartree) |
double |
1000.0 |
|
|
Minimum time for grid (Hartree^-1) |
double |
0.005 |
|
|
Time interval for even-spaced grid (Hartree^-1) |
double |
0.0 |
|
|
Minimum transition energy for minimax grid generation |
double |
-1.0 (< 0 for automatic setup) |
Experimental |
|
Maximum transition energy for minimax grid generation |
double |
-1.0 (< 0 for automatic setup) |
Experimental |
|
Regulation parameter for minimax transfomration matrix |
double |
0.0 |
Experimental |
When using the API, set tfgrids_type explicitly before computation.
The driver maps the unset value to minimax for backward compatibility.
Coulomb and Band Summation Controls#
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Use full Coulomb interaction in \(\varepsilon = 1 - v \chi^0\) |
bool |
|
Experimental |
|
Use full Coulomb interaction in the exact-exchange operator |
bool |
|
Experimental |
|
Use full Coulomb interaction in \(W^c = (\varepsilon^{-1} - 1) v\) |
bool |
|
Experimental |
|
Maximum number of bands for response-function construction |
int |
-1 (< 0 for all bands) |
Experimental |
|
Maximum number of bands for correlation self-energy construction |
int |
-1 (< 0 for all bands) |
Experimental |
RPA-specific Parameters#
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Real-space Green’s function screening threshold for response function |
double |
0.0 |
|
|
Use ScaLAPACK to calculate \(E_\text{c}^{\text{RPA}}\) |
bool |
|
ABF Compression Parameters#
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Use a compressed auxiliary basis |
bool |
|
Experimental |
|
Build response matrices directly in the compressed auxiliary basis |
bool |
|
Experimental |
GW-specific Parameters#
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Number of parameters for analytic continuation |
int |
-1 (uses all |
|
|
Use ScaLAPACK for computing \(W^c\) from \(\chi^0\) |
bool |
|
|
|
Use Cholesky factorization for computing \(W^c\) from \(\chi^0\) |
bool |
|
Experimental |
|
Replace the dielectric matrix head by the macroscopic dielectric function |
bool |
|
Experimental |
|
Option for dielectric function on the imaginary axis |
int |
0 (0=direct, 1=spline, 2=model fit) |
Experimental |
|
Use the 2D dielectric-function branch where supported |
bool |
|
Experimental |
|
Load correlation self-energy matrix from file where supported |
bool |
|
Experimental |
|
Threshold for eigenvalues when taking the square root of Coulomb matrices |
double |
0.0 |
LibRI Parameters#
These parameters are active for LibRI-enabled builds and LibRI routing.
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Threshold of LRI triple coefficients for response function |
double |
0.0 |
|
|
Threshold of Green’s function for response function |
double |
0.0 |
|
|
Threshold of LRI triple coefficients for exact exchange |
double |
0.0 |
|
|
Threshold of density matrices for exact exchange |
double |
0.0 |
|
|
Threshold of Coulomb matrices for exact exchange |
double |
0.0 |
|
|
Threshold of LRI triple coefficients for G0W0 correlation self-energy |
double |
0.0 |
|
|
Threshold of Green’s function for G0W0 correlation self-energy |
double |
0.0 |
|
|
Threshold of screened Coulomb matrix for G0W0 correlation self-energy |
double |
0.0 |
Output Control Parameters#
Parameter Name |
Description |
Type |
Default Value (Options) |
Status |
|---|---|---|---|---|
|
Output correlation self-energy matrix (k-space, imaginary frequencies) |
bool |
|
Experimental |
|
Output correlation self-energy matrix (real-space, imaginary time) |
bool |
|
Experimental |
|
Output correlation self-energy matrix (real-space, imaginary frequencies) |
bool |
|
Experimental |
|
Output \(W^c\) matrix in real space and imaginary frequency where supported |
int |
0 (0=off, 1=lowest frequency, 2=all frequencies) |
Experimental |
Driver Compatibility Aliases#
The driver still accepts a few older input keys for backward compatibility, and may be removed in the future:
Alias Name |
Preferred Name |
Notes |
|---|---|---|
|
|
|
|
|
Old spelling for selecting spinor-format driver input |
|
|
Old spelling |
|
|
Old spelling |
For details on all parameters, you can visit the API documentation of struct LibrpaOptions.