tikz_diagrams#

tikz_diagrams(tree, direction=False, trans_label=None, R_label=False, abstract=None, hspace='2cm')[source]#

Return tikz code for series of double-sided Feynmann diagrams.

Parameters:
  • tree (rotsim2d.pathways.KetBra) – Root of KetBra excitation tree. Generate pathway diagrams for all leaves.

  • direction (bool, optional) – Add phase-matching direction label.

  • trans_label ({'proper', 'degenerate'}, optional) – Add transition label, either unambiguous or degenerate one.

  • R_label (bool, optional) – Add R_i, i=1,…,8, label.

  • abstract (tuple of int, optional) – Tuple of ground state quantum numbers, (nu, j).

  • hspace (str) – Horizontal space between pathways in LaTeX dimensions.

Returns:

Tikz code to for diagrams. Needs to be placed in a LaTeX document to compile.

Return type:

str

Examples

Create KetBras, filter and render diagrams:

>>> import rotsim2d.pathways as pw
>>> import rotsim2d.visual as vis
>>> kbs = pw.gen_pathways([5], meths=[pw.only_SI], rotor='linear')
>>> vis.latex_compile('diagrams.tex',
                      vis.latex_document(
                          vis.tikz_diagrams(kbs, abstract=(0, 5))))