|
ampsci
c++ program for high-precision atomic structure calculations of single-valence systems
|
| ▼NAdamsMoulton | Contains classes and functions which use general N-step Adams Moulton method to solve systems of 2x2 ODEs, up to N=12 |
| CAM_Coefs | Holds the K+1 Adams-Moulton ak coefficients for the K-step AM method. Final one, aK, is stored separately |
| 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 |
| 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 |
| CDiracConfig | Stores relativistic single-electron state {n, kappa, energy} |
| CElement | Atomic element data: Z, symbol, A, name |
| CNonRelConfig | Stores non-relativistic single-electron config: {n, l, number} |
| ▼NCI | Functions and classes for Configuration Interaction calculations |
| CConfigInfo | Basic configuration info for each CI level solution |
| CCSF2 | Very basic two-electron CSF. Only two-electron is implemented |
| CPsiJPi | Stores the CI Solutions for given J and parity (only two-electron) |
| ▼NCoulomb | Functions (+classes) for computing Coulomb integrals |
| CCoulombTable | Base (pure virtual) class to store Coulomb integrals, and similar. 3 derived classes, which account for symmetry |
| 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) |
| 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 | |
| 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 |
| Cdr | Radial derivative operator |
| CE1 | Electric dipole operator: -|e|r = -er |
| CE1v | Electric dipole operator, v-form: \( \frac{ie}{\omega \alpha} \vec{\alpha}\) |
| CEk | E^k (electric multipole) operator |
| CEk_omega | Electric multipole operator, L-form, including frequency-dependence |
| CEkv_omega | Electric multipole operator, V-form, including frequency-dependence |
| Cfieldshift | Field shift operator, (e.g.) dV = V(r+dr) - V(r) |
| Cg0jL | Matrix element of tensor operator: gamma^0 J_L(qr) C^L |
| Chfs | Units: Assumes g in nuc. magneton units (magnetic), and Q in barns (electric), and rN is atomic units |
| Cig0g5jL | Matrix element of tensor operator: i gamma^0gamma^5 J_L(qr) C^L. nb: i makes ME real |
| Cig5jL | Matrix element of tensor operator: i gamma^5 J_L(qr) C^L. nb: i makes ME real |
| CIntM4x4 | 4x4 Integer matrix (for Gamma/Pauli). Can be real or imag. Not mixed |
| Cj | J (total angular momentum) operator |
| CjL | Matrix element of tensor operator: J_L(qr)*C^L |
| Cl | L (orbital angular momentum) operator |
| CM1 | Magnetic dipole operator: <a||M1||b> |
| CM1nr | Magnetic dipole operator, in non-relativistic form: M1 = L + 2S |
| CMk_omega | Magnetic multipole operator, including frequency-dependence |
| CMLVP | Magnetic loop vacuum polarisation (Uehling vertex) |
| CNullOperator | Speacial operator: 0 |
| CPNCnsi | Nuclear-spin independent PNC operator (Qw) |
| CRadialF | General function of r, even scalar operator |
| Cs | S (spin) operator |
| CScalarOperator | Speacial case for scalar operator |
| CTensorOperator | General operator (virtual base class); operators derive from this |
| CVertexQED | Effective VertexQED operator |
| CVrad | Flambaum-ginges radiative potential operator |
| ▼NExternalField | Calculates many-body corrections (RPA) to matrix elements of external field |
| 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 |
| CMEdata | Small struct to store calculated matrix elements |
| 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) |
| 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.,: |
| CIsVector | Class to determine if a class template in vector |
| COption | Simple struct; holds key-value pair, both strings. == compares key |
| ▼NLinAlg | Defines Matrix, Vector classes, and linear some algebra functions |
| CMatrix | Matrix class; row-major |
| CVector | Vector class (inherits from Matrix) |
| CView | Proved a "view" onto an array |
| ▼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 |
| ▼Nqip | Qip library: A collection of useful functions |
| 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 |
| CArrayView | A view onto a 1D array; used for rows/collumns of ND array. Can have a stride |
| CComparison | Helper template for comparisons. Derive from this to provide !=,>,<=,>=, given == and < |
| CConstStrideIterator | A constant iterator accounting for a stride |
| Cless_abs | Function object for performing comparisons of absolute values (uses std::abs). Works similarly to std::less |
| CStrideIterator | An iterator accounting for a stride |
| CStrongType | A light-weight easy-to-use single-file header-only template class for strong typing |
| CBSpline | |
| CContinuumOrbitals | Class stores set of continuum orbitals, and solves using Hartree-Fock method |
| CDiracSpinor | Stores radial Dirac spinor: F_nk = (f, g) |
| CGrid | Holds grid, including type + Jacobian (dr/du) |
| CGridParameters | Parmaters used to create Grid |
| CWavefunction | Stores Wavefunction (set of valence orbitals, grid, HF etc.) |