►NAdamsMoulton | Contains classes and functions which use general N-step Adams Moulton method to solve systems of 2x2 ODEs, up to N=12 |
CDerivativeMatrix | Pure-virtual struct, holds the derivative matrix for 2x2 system of ODEs. Derive from this, and implement a(t),b(t),c(t),d(t) to define the 2x2 ODE |
CAM_Coefs | Holds the K+1 Adams-Moulton ak coefficients for the K-step AM method. Final one, aK, is stored separately |
CODESolver2D | Solves a 2D system of ODEs using a K-step Adams-Moulton method |
►NAngular | Angular provides functions and classes for calculating and storing angular factors (3,6,9-J symbols etc.) |
CCkTable | Lookup table for C^k and 3j symbols (special m=1/2, q=0 case) |
CSixJTable | Lookup table for Wigner 6J symbols |
►NAtomData | Useful atomic data/functions |
CNonRelConfig | Stores non-relativistic single-electron config: {n, l, number} |
CDiracConfig | Stores relativistic single-electron state {n, kappa, energy} |
CElement | Atomic element data: Z, symbol, A, name |
►NCI | Functions and classes for Configuration Interaction calculations |
CCSF2 | Very basic two-electron CSF. Only two-electron is implemented |
CConfigInfo | Basic configuration info for each CI level solution |
CPsiJPi | Stores the CI Solutions for given J and parity (only two-electron) |
►NCoulomb | Functions (+classes) for computing Coulomb integrals |
CmeTable | Look-up table for matrix elements. Note: does not assume any symmetry: (a,b) is stored independantly of (b,a). In general, maps a pair of DiracSpinors to a single value (of any type, T) |
CCoulombTable | Base (pure virtual) class to store Coulomb integrals, and similar. 3 derived classes, which account for symmetry |
CYkTable | Calculates + stores Hartree Y functions + Angular (w/ look-up), taking advantage of symmetry |
►NDiracODE | Functions and classes used to solve the Dirac equation |
►NInternal | |
CDiracDerivative | Matrix which defines Dirac derivative: (dF/dr) = D*F |
CCDiracDerivative | Matrix which defines Dirac derivative: (dF/dr) = D*F |
CAsymptoticSpinor | Performs asymptotic expansion for f and g at large r, up to order Nx in (1/r) |
CDiracContinuumDerivative | Derivative function for H-like; valid for continuum states at large r |
►NDiracOperator | Dirac Operators: General + derived |
CEk | E^k (electric multipole) operator |
CE1 | Electric dipole operator: -|e|r = -er |
CE1v | Electric dipole operator, v-form: \( \frac{ie}{\omega \alpha} \vec{\alpha}\) |
Cfieldshift | Field shift operator, (e.g.) dV = V(r+dr) - V(r) |
Chfs | Units: Assumes g in nuc. magneton units (magnetic), and Q in barns (electric), and rN is atomic units |
CjL | Matrix element of tensor operator: J_L(qr)*C^L |
Cg0jL | Matrix element of tensor operator: gamma^0 J_L(qr) C^L |
Cig5jL | Matrix element of tensor operator: i gamma^5 J_L(qr) C^L. nb: i makes ME real |
Cig0g5jL | Matrix element of tensor operator: i gamma^0gamma^5 J_L(qr) C^L. nb: i makes ME real |
Cj | J (total angular momentum) operator |
Cl | L (orbital angular momentum) operator |
Cs | S (spin) operator |
CM1 | Magnetic dipole operator: <a||M1||b> |
CM1nr | Magnetic dipole operator, in non-relativistic form: M1 = L + 2S |
CPNCnsi | Nuclear-spin independent PNC operator (Qw) |
CVrad | Flambaum-ginges radiative potential operator |
CVertexQED | Effective VertexQED operator |
CMLVP | Magnetic loop vacuum polarisation (Uehling vertex) |
CRadialF | General function of r, even scalar operator |
Cdr | Radial derivative operator |
CIntM4x4 | 4x4 Integer matrix (for Gamma/Pauli). Can be real or imag. Not mixed |
CTensorOperator | General operator (virtual base class); operators derive from this |
CScalarOperator | Speacial case for scalar operator |
CNullOperator | Speacial operator: 0 |
►NExternalField | Calculates many-body corrections (RPA) to matrix elements of external field |
CMEdata | Small struct to store calculated matrix elements |
CCorePolarisation | Virtual Core Polarisation class, for <a||dV||b>. See TDHF, DiagramRPA, etc |
CDiagramRPA | RPA correction to matrix elements, using Diagram technique |
CDiagramRPA0_jL | RPA correction to matrix elements, using Diagram technique |
CTDHF | Uses time-dependent Hartree-Fock method to include core-polarisation (RPA) corrections to matrix elements of some external field operator |
CTDHFbasis | Similar to the time-dependent Hartree-Fock method, but expands dPsi corrections using a basis to include core-polarisation (RPA) corrections to matrix elements of some external field operator |
►NHF | Functions and classes for Hartree-Fock |
CBreit | Breit (Hartree-Fock Breit) interaction potential |
CEpsIts | Small struct to store: {eps, its, symbol}. eps=convergence; its=iterations; symbol=which state. May be sorted (by eps) |
CHartreeFock | Solves relativistic Hartree-Fock equations for core and valence. Optionally includes Breit and QED effects. Can include Sigma (correlations) for valence states. Class stores nuc. and direct potentials, a set of yk integrals, and QED potential. Stores the core orbitals |
►NInterpolator | Interpolates functions using cubic splines. Uses GSL: https://www.gnu.org/software/gsl/doc/html/interp.html |
CInterp | Performs interpolation using GSL (GNU Scientific Library) |
►NIO | In-out (timers, profilers, and read/write data) |
CIsVector | Class to determine if a class template in vector |
COption | Simple struct; holds key-value pair, both strings. == compares key |
CInputBlock | Holds list of Options, and a list of other InputBlocks. Can be initialised with a list of options, with a string, or from a file (ifstream). Format for input is, e.g.,: |
►NLinAlg | Defines Matrix, Vector classes, and linear some algebra functions |
CView | Proved a "view" onto an array |
CMatrix | Matrix class; row-major |
CVector | Vector class (inherits from Matrix) |
►NMBPT | Many-body perturbation theory |
CFeynman | Class to construct Feynman diagrams, Green's functions and polarisation op |
CGoldstone | Class to construct Feynman diagrams, Green's functions and polarisation op |
CRDMatrix | |
CStructureRad | Calculates Structure Radiation + Normalisation of states, using diagram method |
►NNuclear | Data and useful functions for nuclear properties and potentials. Radii all in Fermi (fm, e-15m) from Nuclear Data Service: https://www-nds.iaea.org/ |
CIsotope | Isotope data: Z, A, r_rms/fm, I, pi, mu, Q |
CNucleus | Stores set of nuclear parameters (all radii in fm) |
►NQED | |
►CRadPot | Class holds Flambaum-Ginges QED Radiative Potential |
CScale | Scale factors for Uehling, high, low, magnetic, Wickman-Kroll |
CXl | Extra fitting for s,p,d etc. states |
►Nqip | Qip library: A collection of useful functions |
CStrideIterator | An iterator accounting for a stride |
CConstStrideIterator | A constant iterator accounting for a stride |
CArrayView | A view onto a 1D array; used for rows/collumns of ND array. Can have a stride |
Cless_abs | Function object for performing comparisons of absolute values (uses std::abs). Works similarly to std::less |
CStrongType | A light-weight easy-to-use single-file header-only template class for strong typing |
CComparison | Helper template for comparisons. Derive from this to provide !=,>,<=,>=, given == and < |
CArithmetic | Helper template for Arithmetic operations. Derive from this to provide +,-,*,/, given +=, -=, *=, /= |
CArithmetic2 | Helper template for Arithmetic operations. Derive from this to provide +,-,*,/, given +=, -=, *=, /=. Works for two different types |
Cbasic_cstring_view | |
Cbasic_format_args | |
Cbasic_format_parse_context | |
Cbasic_format_string | |
Cbasic_memory_buffer | |
Cbasic_string_view | |
CBSpline | |
Cbuffer | |
CContinuumOrbitals | Class stores set of continuum orbitals, and solves using Hartree-Fock method |
CDiracSpinor | Stores radial Dirac spinor: F_nk = (f, g) |
Cdynamic_format_arg_store | |
Cformat_arg_store | |
Cformat_error | |
Cformat_int | |
CGrid | Holds grid, including type + Jacobian (dr/du) |
CGridParameters | Parmaters used to create Grid |
Cis_char | |
Ctext_style | |
CWavefunction | Stores Wavefunction (set of valence orbitals, grid, HF etc.) |