#include <clebschgordan_lookup.h>
Class to store and retrieve/calculate Clebsch-Gordan coefficients.
Definition at line 22 of file clebschgordan_lookup.h.
Classes | |
struct | ThreeSpinHash |
This is one of the possible ways to prepare a hashing mechanism to use a custom object in a std::unordered_map container. More... | |
struct | ThreeSpins |
Auxiliary struct to be used as key in the look up table of Clebsch-Gordan coefficients. More... | |
Static Public Member Functions | |
static double | coefficient (const int j_a, const int j_b, const int j_c, const int m_a, const int m_b, const int m_c) |
Check in the Clebsch-Gordan lookup table if the requested coefficient is available. More... | |
Static Private Member Functions | |
static double | calculate_coefficient (const int j_a, const int j_b, const int j_c, const int m_a, const int m_b, const int m_c) |
Calculate Clebsch-Gordan coefficient \((-1)^{j_a - j_b + m_c} \sqrt{(2 j_c + 1)} \cdot [Wigner 3J symbol] \). More... | |
Static Private Attributes | |
static std::unordered_map< ThreeSpins, double, ThreeSpinHash > | lookup_table |
Tabulation of Clebsch-Gordan coefficients. More... | |
|
static |
Check in the Clebsch-Gordan lookup table if the requested coefficient is available.
If so, return it, otherwise calculate the requested one, store it in the lookup table and return it.
Definition at line 41 of file clebschgordan_lookup.cc.
|
staticprivate |
Calculate Clebsch-Gordan coefficient \((-1)^{j_a - j_b + m_c} \sqrt{(2 j_c + 1)} \cdot [Wigner 3J symbol] \).
[in] | j_a | isospin of first particle |
[in] | j_b | isospin of second particle |
[in] | j_c | isospin of resonance |
[in] | m_a | z-component of isospin of first particle |
[in] | m_b | z-component of isospin of second particle |
[in] | m_c | z-component of isospin of resonance |
Note that the calculation assumes that the isospin values (j/m) have been multiplied by two (in order to be integer).
Definition at line 22 of file clebschgordan_lookup.cc.
|
inlinestaticprivate |
Tabulation of Clebsch-Gordan coefficients.
The C++ code to produce this member declaration can be found in the "tabulate" unit test of this file.
Definition at line 193 of file clebschgordan_lookup.h.