librpa_enums.h File Reference

librpa_enums.h File Reference#

LibRPA: librpa_enums.h File Reference
LibRPA
librpa_enums.h File Reference

Enumeration types and constants for LibRPA. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define LIBRPA_UNSET   -101
 Undefined or unset value for integer parameters.
 
#define LIBRPA_AUTO   -51
 Automatic selection value. LibRPA will choose appropriate setting.
 
#define LIBRPA_SWITCH_OFF   0
 Switch value for disabled/off state (equivalent to false).
 
#define LIBRPA_SWITCH_ON   1
 Switch value for enabled/on state (equivalent to true).
 
#define LIBRPA_VERBOSE_DEBUG   4
 Verbose level for debug output.
 
#define LIBRPA_VERBOSE_INFO   3
 Verbose level for informational messages.
 
#define LIBRPA_VERBOSE_WARN   2
 Verbose level for warning messages.
 
#define LIBRPA_VERBOSE_CRITICAL   1
 Verbose level for essential results and critical/error messages only.
 
#define LIBRPA_VERBOSE_SILENT   0
 Silent mode - no output.
 
#define LIBRPA_ROUTING_COUNT   5
 
#define LIBRPA_TFGRID_COUNT   7
 

Typedefs

typedef int LibrpaSwitch
 Boolean switch type.
 
typedef int LibrpaKind
 Type of DFT code (reserved for future use).
 
typedef int LibrpaVerbose
 Verbosity level for runtime output.
 

Enumerations

enum  LibrpaAngularOrder {
  LIBRPA_ANGULAR_ORDER_UNSET = LIBRPA_UNSET , LIBRPA_ANGULAR_ORDER_NATURAL = 0 , LIBRPA_ANGULAR_ORDER_ABS_PM = 1 , LIBRPA_ANGULAR_ORDER_OPENMX = 2 ,
  LIBRPA_ANGULAR_ORDER_PYSCF = 3
}
 Ordering of real spherical harmonics inside one angular-momentum shell. More...
 
enum  LibrpaRshCoeff { LIBRPA_RSH_COEFF_UNSET = LIBRPA_UNSET , LIBRPA_RSH_COEFF_1_M = 0 , LIBRPA_RSH_COEFF_M_1 = 1 }
 Coefficient-pair convention for one nonzero real spherical harmonic branch. More...
 
enum  LibrpaParallelRouting {
  LIBRPA_ROUTING_UNSET = LIBRPA_UNSET , LIBRPA_ROUTING_AUTO = LIBRPA_AUTO , LIBRPA_ROUTING_RTAU = 0 , LIBRPA_ROUTING_ATOMPAIR = 1 ,
  LIBRPA_ROUTING_LIBRI = 2
}
 Parallel routing strategy for distributed memory calculations. More...
 
enum  LibrpaTimeFreqGrid {
  LIBRPA_TFGRID_UNSET = LIBRPA_UNSET , LIBRPA_TFGRID_GAUSS_LEGENDRE = 0 , LIBRPA_TFGRID_GAUSS_CHEBYSHEV_I = 1 , LIBRPA_TFGRID_GAUSS_CHEBYSHEV_II = 2 ,
  LIBRPA_TFGRID_MINIMAX = 3 , LIBRPA_TFGRID_EVEN_SPACED = 4 , LIBRPA_TFGRID_EVEN_SPACED_TF = 5 , LIBRPA_TFGRID_SPLIT_GAUSS_LEGENDRE = 6
}
 Type of time or frequency grid for integration. More...
 

Detailed Description

Enumeration types and constants for LibRPA.

This file defines the enumeration types used throughout LibRPA for parallel routing, time/frequency grids, and runtime controls.

Macro Definition Documentation

◆ LIBRPA_ROUTING_COUNT

#define LIBRPA_ROUTING_COUNT   5

Number of parallel routing types available.

◆ LIBRPA_TFGRID_COUNT

#define LIBRPA_TFGRID_COUNT   7

Number of time/frequency grid types available.

Typedef Documentation

◆ LibrpaKind

typedef int LibrpaKind

Type of DFT code (reserved for future use).

Currently reserved for identifying the source of wavefunction data. Not yet implemented.

◆ LibrpaSwitch

typedef int LibrpaSwitch

Boolean switch type.

Use LIBRPA_SWITCH_ON (1) or LIBRPA_SWITCH_OFF (0) to set.

◆ LibrpaVerbose

typedef int LibrpaVerbose

Verbosity level for runtime output.

Controls the amount of information printed during computation. Use one of LIBRPA_VERBOSE_* constants.

Enumeration Type Documentation

◆ LibrpaAngularOrder

Ordering of real spherical harmonics inside one angular-momentum shell.

Enumerator
LIBRPA_ANGULAR_ORDER_UNSET 

Unknown or not specified.

LIBRPA_ANGULAR_ORDER_NATURAL 

-l, -l+1, ..., l-1, l

LIBRPA_ANGULAR_ORDER_ABS_PM 

0, 1, -1, 2, -2, ...

LIBRPA_ANGULAR_ORDER_OPENMX 

OpenMX ordering.

LIBRPA_ANGULAR_ORDER_PYSCF 

PySCF ordering.

◆ LibrpaParallelRouting

Parallel routing strategy for distributed memory calculations.

Specifies how the computation is distributed across MPI processes.

Enumerator
LIBRPA_ROUTING_UNSET 

Use default routing (unset)

LIBRPA_ROUTING_AUTO 

Automatically select optimal routing.

LIBRPA_ROUTING_RTAU 

Real-space tau (time) decomposition.

LIBRPA_ROUTING_ATOMPAIR 

Atom-pair parallelization.

LIBRPA_ROUTING_LIBRI 

Use LibRI for RI basis operations.

◆ LibrpaRshCoeff

Coefficient-pair convention for one nonzero real spherical harmonic branch.

For m < 0 this selects {a, b} in \(i/\sqrt{2} [a Y_l^m - b Y_l^{-m}]\). For m > 0 this selects {c, d} in \(1/\sqrt{2} [c Y_l^m + d Y_l^{-m}]\).

Enumerator
LIBRPA_RSH_COEFF_UNSET 

Unknown or not specified.

LIBRPA_RSH_COEFF_1_M 

{1, (-1)^m}

LIBRPA_RSH_COEFF_M_1 

{(-1)^m, 1}

◆ LibrpaTimeFreqGrid

Type of time or frequency grid for integration.

Different grid types offer different convergence properties for RPA and GW calculations.

Enumerator
LIBRPA_TFGRID_UNSET 

Use default grid (unset)

LIBRPA_TFGRID_GAUSS_LEGENDRE 

Gauss-Legendre quadrature.

LIBRPA_TFGRID_GAUSS_CHEBYSHEV_I 

Gauss-Chebyshev type I.

LIBRPA_TFGRID_GAUSS_CHEBYSHEV_II 

Gauss-Chebyshev type II.

LIBRPA_TFGRID_MINIMAX 

Minimax grid.

LIBRPA_TFGRID_EVEN_SPACED 

Evenly spaced grid.

LIBRPA_TFGRID_EVEN_SPACED_TF 

Evenly spaced in time-frequency.

LIBRPA_TFGRID_SPLIT_GAUSS_LEGENDRE 

Finite GL interval plus transformed tail.