iblep-conn-lep
graph LR
%%%%%%%%%%%%%%%%%%%%%%%
%% Highlight definition
%%%%%%%%%%%%%%%%%%%%%%%
classDef highlight fill:#083008,stroke:#20B030,stroke-width:4px
%%%%%%%%%%%%%%%%%%%%%%%
%% Graph
%%%%%%%%%%%%%%%%%%%%%%%
iblep-disc-loops -->|Propagators| iblep-disc-burgershort;
iblep-disc-loops -.->|Tadpoles| iblep-conn-lep;
iblep-disc-loops -.->|Tadpoles| iblep-conn-omega;
iblep-disc-burgerlong;
iblep-conn-emfieldft;
iblep-real-fixgauge -->|Gauge field| iblep-real-props;
iblep-real-props -->|Propagators| iblep-real-threept;
class iblep-conn-lep highlight
%%%%%%%%%%%%%%%%%%%%%%%
%% Interaction
%%%%%%%%%%%%%%%%%%%%%%%
click iblep-disc-loops "../../../workflows/disc/iblep-disc-loops/";
click iblep-disc-burgershort "../../../workflows/disc/iblep-disc-burgershort/";
click iblep-disc-burgerlong "../../../workflows/disc/iblep-disc-burgerlong/";
click iblep-conn-lep "../../../workflows/conn/iblep-conn-lep/";
click iblep-conn-omega "../../../workflows/conn/iblep-conn-omega/";
click iblep-conn-emfieldft "../../../workflows/conn/iblep-conn-emfieldft/";
click iblep-real-fixgauge "../../../workflows/real/iblep-real-fixgauge/";
click iblep-real-props "../../../workflows/real/iblep-real-props/";
click iblep-real-threept "../../../workflows/real/iblep-real-threept/";
iblep-conn-lep computes connected radiative-correction diagrams for mesons and leptonic
-decays.
Inputs
- A gauge configuration, or the deterministic random gauge field used by the
debugsetup. - An optional gauge transformation and light-quark eigenpack, where required by the selected solver setup.
- An optional path to traced disconnected loops produced by
iblep-disc-loopsfor constructing tadpole insertions.
Outputs
- File: A Hadrons result group with pion, kaon, and \(\eta_s\) correlators and
connected and tadpole isospin-breaking corrections, stored at
results/two_point/two_point_tP<source-time>. - File: A Hadrons result group for leptonic decay correlators and
connected and tadpole isospin-breaking corrections, stored at
results/leptonic_decay/leptonic_decay_tP<source-time>. - Database: Rows in the result database that map every contraction dataset to its result file.
- An optional XML module graph at
paths.xml/<runId>.xml.
Workflow
For each requested trajectory and source time, the workflow constructs the
gauge fields and source/sink operators, prepares the configured solvers, and
contracts the connected diagrams. flags independently enable scalar
insertions, QED insertions, leptonic decay contractions, charm, tadpoles,
and disconnected-meson-QED contributions. The kinematics block
defines the target meson mass and lepton angles/masses; when
stochasticDirections is enabled, the corresponding stochastic momentum path
is used. Sources may be wall or point sources and are placed at the times in
sourceTimes.
From datasets to physics
The individual operations are defined by the corresponding Hadrons modules,
particularly Meson,
SeqAslash,
EMLepton,
WeakMesonDecayKl2,
and QEDTadpole.
This section defines how the workflow maps those module outputs to diagram
labels and how the stored bare correlators must be combined.
For an ordered pair of valence flavours \(f_1f_2\), the propagators constructed by the workflow are
\(A\) is the stochastic QED field and \(T\) is a photon-convolved sea loop (which already contains a factor \(i\)). The files contain the insertions shown above but do not contain \(e\), quark charges, local electromagnetic-current renormalisation factors, mass shifts, or weak-current renormalisation factors.
The first character of a meson label is line 1 and the second is line 2. For
example, ls means $(f_1,f_2)=(l,s).
Two-point functions
The two_point.diagram labels have the following meanings:
| Diagram | Propagators supplied to Meson |
Meaning |
|---|---|---|
tree |
\((S_{f_1},S_{f_2})\) | The tree-level correlator. |
S1 |
\((S_{f_1}^{S},S_{f_2})\) | Scalar insertion on line 1. |
S2 |
\((S_{f_1},S_{f_2}^{S})\) | Scalar insertion on line 2. |
A1 |
\((S_{f_1}^{A},S_{f_2})\) | One stochastic-photon insertion on line 1. |
A2 |
\((S_{f_1},S_{f_2}^{A})\) | One stochastic-photon insertion on line 2. |
AA1 |
\((S_{f_1}^{AA},S_{f_2})\) | Both photon insertions on line 1. |
AA2 |
\((S_{f_1},S_{f_2}^{AA})\) | Both photon insertions on line 2. |
A1_A2 |
\((S_{f_1}^{A},S_{f_2}^{A})\) | One photon insertion on each line. |
T1_<name> |
\((S_{f_1}^{T},S_{f_2})\) | Tadpole on line 1. |
T2_<name> |
\((S_{f_1},S_{f_2}^{T})\) | Tadpole on line 2. |
A |
\((iA_\mu \gamma^\mu S_f,S_f)\) | Single-insertion disconnected-meson-QED contraction enabled by doDiscMesonQed. |
Each Meson dataset is a vector of records containing gamma_snk,
gamma_src, and a complex temporal correlator corr. Unless
contractAllGammas is enabled, the workflow contracts every pair from
and additionally the four sink/source pairs \((\gamma_\mu,\gamma_5)\).
Sea-loop tadpole insertions
The four files in a tadpoles entry are accumulated local vector loops from
iblep-disc-loops. This is an unnormalised sum, and the hit count must be
divided out to get the correctly-normalised correlation function.
In the
standard loop filenames the suffix is the final zero-based hit index, so a
file ending in .127 contains 128 hits; do not interpret the suffix itself as
the hit count.
The tadpole contribution to the two-point function is
The connected and disconnected runs must use the same trajectory and photon
prescription. A spliteven_ls loop estimates the difference \(L_l-L_s\); it is
an optimised estimator for the difference that can be used in place of a sum over
\(\{u,d,s\}\) (when using a unitary light quark). This carries a factor 1/3 in place
of a quark charge.
Leptonic-decay correlators
The leptonic_decay.diagram labels extend the line convention above:
| Diagram | Meaning |
|---|---|
tree |
Tree-level weak-decay correlator with the free lepton propagator. |
S1, S2 |
Scalar insertion on valence line 1 or 2. |
A1, A2 |
One photon insertion on valence line 1 or 2, with a free lepton. |
Al |
One photon insertion on the lepton, with uninserted valence lines. |
A1_Al, A2_Al |
Photon exchange between valence line 1 or 2 and the lepton. |
T1_<name>, T2_<name> |
Named sea-loop tadpole on valence line 1 or 2. |
Tl_<name> |
Tadpole on the lepton. |
WeakMesonDecayKl2 stores corr, a time-vector of \(4\times4\) lepton spin
matrices. The executable does not project those matrices onto an external
lepton spinor and does not include the weak prefactor, CKM factor, or
renormalisation of the local weak current. For the pseudoscalar axial-current
channel, the appropriate \(Z_A\) must therefore be applied in the subsequent
amplitude analysis.
Rows must be matched at fixed meson, tSrc, dt, source, and kinIndex.
The kinematics row gives
and lepton_twist identifies the actual twist direction.
How to run
The following is an example input JSON copied from
parameters/iblep-conn/test.json:
{
"setup": "debug",
"runId": "test",
"traj": { "start": 1000, "end": 1040, "step": 20 },
"geometry": { "nt": 8, "nl": 4 },
"qed": "r",
"dryRun": false,
"paths": {
"results": "data",
"resultDb": "data/result.1000.db",
"gauge": "",
"gaugeTransform": "",
"eigenpack": ""
},
"charm": {
"mc": 0.45,
"residual": 1.0e-18
},
"kinematics": {
"stochasticDirections": false,
"pi": {
"mP": 0.059088,
"leptons": [
{ "ml": 0.04, "angles": [ 0.1, 0.2 ] },
{ "ml": 0.04, "angles": [ 0.0, 0.0 ] }
]
},
"K": { "mP": 0.210640, "leptons": [ { "ml": 0.04, "angles": [ 0.5, -0.3 ] } ] },
"D": { "mP": 0.790857, "leptons": [ { "ml": 0.02, "angles": [ 0.3, -0.3 ] } ] },
"Ds": { "mP": 0.834754, "leptons": [ { "ml": 0.05, "angles": [ 0.8, -0.0 ] } ] }
},
"leptonDt": [ 1, 2 ],
"sourceType": "wall",
"sourceTimes": {
"start": 0,
"end": 4,
"dt": 2
},
"tadpoles": [
{
"name": "lsse",
"pathX": "tadpole/sealoop_ls_se_loop_GammaX.128",
"pathY": "tadpole/sealoop_ls_se_loop_GammaY.128",
"pathZ": "tadpole/sealoop_ls_se_loop_GammaZ.128",
"pathT": "tadpole/sealoop_ls_se_loop_GammaT.128"
}
],
"flags": {
"doQed": true,
"doScalarInsertion": true,
"doLeptonics": true,
"doCharmed": true,
"doTadpole": false,
"doDiscMesonQed": false,
"contractAllGammas": false,
"saveEmField": true
}
}
The top-level parameters are:
| Key | Meaning |
|---|---|
setup, runId, dryRun |
Setup selection (see below), run label, and dry-run mode. |
traj |
Inclusive start/end trajectory range and step. |
geometry |
Lattice temporal extent nt and spatial extent nl. |
qed |
Photon discretisation choice (L or r). |
paths |
Results, result DB, gauge, gauge transform, and eigenpack locations. |
charm |
Charm mass and solver residual. |
kinematics |
Kinematic parameters for the leptonic decay. |
leptonDt |
Temporal separations used for leptonic contractions. |
sourceType, sourceTimes |
Source type and source-time range/stride. |
tadpoles |
Names and four vector-component-loop file paths. |
flags |
Feature switches controlling the contraction workflow. |
The available setups are:
| Key | Meaning |
|---|---|
debug |
A debug configuration . |
unit-test |
A debug configuration. |
unit-test-norand |
A debug configuration which loads a saved emField. |
RBCUKQCD-C0ZMobiusLCD |
RBC/UKQCD C0 ensemble with ZMobius light quarks with Local Coherence deflation. |
RBCUKQCD-C0MADWFLCD |
RBC/UKQCD C0 ensemble with Mobius light quarks with Local Coherence deflation via MADWF solves. |
RBCUKQCD-C0LLCD |
RBC/UKQCD C0L ensemble with light quarks with Local Coherence deflation. |
RBCUKQCD-M0LCD |
RBC/UKQCD M0 ensemble with light quarks with Local Coherence deflation. |
RBCUKQCD-C1MIRL |
RBC/UKQCD C1M ensemble with online deflation of light quarks. |
RBCUKQCD-C1M16IRL |
RBC/UKQCD C1M16 ensemble with online deflation of light quarks. |
RBCUKQCD-C1M20IRL |
RBC/UKQCD C1M20 ensemble with online deflation of light quarks. |
RBCUKQCD-C1M32IRL |
RBC/UKQCD C1M32 ensemble with online deflation of light quarks. |
JLQCD-fUd3Sa |
JLQCD fUd3Sa ensemble with a fine lattice spacing. |
JLQCD-fUd3Sa |
JLQCD mUd3Sa ensemble with a medium lattice spacing. |
JLQCD-fUd3Sa |
JLQCD mUd3Sb ensemble with a medium lattice spacing. |
JLQCD-fUd3Sa |
JLQCD cUd2Sa ensemble with a coarse lattice spacing. |
JLQCD-fUd3Sa |
JLQCD cUd2SaL ensemble with a coarse lattice spacing. |
JLQCD-fUd3Sa |
JLQCD cUd3Sa ensemble with a coarse lattice spacing. |
JLQCD-fUd3Sa |
JLQCD cUd3Sb ensemble with a coarse lattice spacing. |
Output and data format
The application result database contains the following tables. dataset
columns contain the HDF5/Hadrons dataset path.
| Table | Columns (primary key in bold) |
|---|---|
two_point |
meson, diagram, tSrc, source, sink, dataset |
leptonic_decay |
meson, diagram, tSrc, dt, source, kinIndex, dataset |
lepton_twist |
meson, tSrc, kinIndex, stochastic, dataset |
kinematics |
meson, kinIndex, leptonMass, leptonMom, leptonVelocity, nl, targetPsMass |
files |
type, tSrc; Hadrons metadata path entries |
leptonic_decay.kinIndex and lepton_twist.kinIndex reference the matching
row in kinematics. Hadrons data are written below paths such as
two_point/two_point_tP<tP> and
leptonic_decay/leptonic_decay_tP<tP>. If doQed and saveEmField are true, the generated
field is saved below paths.results/emfield.