EnergySurface

Symbolica documentation for getting started, symbolic expressions, numerical evaluation, pattern matching, and APIs in Python and Rust.

EnergySurface

class EnergySurface

A stored affine energy denominator in a CFF or LTD representation.

Its definition has the form

\[ s=c_0+\sum_e c_e E_e+\sum_a d_a Q_a^0. \]

energy_coefficients stores :math:c_e, external_shift stores :math:d_a, and constant stores :math:c_0. Both coefficient mappings use physical diagram edge IDs. Nonzero energy coefficients of one sign define an E-surface; mixed signs define an H-surface.

symbol and index are local to the representation and surface category. The OSE symbols inside the definition are shared between representations. A SurfaceFactor records an occurrence’s sign and multiplicity without changing this stored definition.

Examples

from symbolica.community import hepkit as hep
process = hep.Model.phi3().process(["phi"], ["phi", "phi"])
diagrams = process.generate_diagrams(
    loops=1, max_vertices=3, maximum_bridges=0, progress=None
)
diagram = diagrams.diagrams[0]
rep = diagram.integrate_energy(method="cff")
surface = rep.surfaces[0]
expression = surface.to_expression()

Attributes

Name Description
constant Energy-independent additive term.
energy_coefficients Exact signed OSE coefficients, keyed by physical edge ID.
external_shift Exact coefficients of external gammalooprs::Q(edge, spenso::cind(0)).
index Index within its surface category and representation.
kind "E" for consistent nonzero energy signs, "H" for mixed signs.
numerator_only Whether this affine expression is used only as a numerator factor.
origin Whether this is a physical surface or an algebraic helper (“physical” or “helper”)
symbol Result-local Symbolica placeholder for this stored surface.
vertices CFF region vertices; LTD regions belong to individual surface occurrences.

constant

EnergySurface.constant: Expression

Energy-independent additive term.

Examples

value = surface.constant

energy_coefficients

EnergySurface.energy_coefficients: builtins.dict[builtins.int, Expression]

Exact signed OSE coefficients, keyed by physical edge ID.

Examples

value = surface.energy_coefficients

external_shift

EnergySurface.external_shift: builtins.dict[builtins.int, Expression]

Exact coefficients of external gammalooprs::Q(edge, spenso::cind(0)).

Examples

value = surface.external_shift

index

EnergySurface.index: builtins.int

Index within its surface category and representation.

Examples

value = surface.index

kind

EnergySurface.kind: builtins.str

"E" for consistent nonzero energy signs, "H" for mixed signs.

Examples

value = surface.kind

numerator_only

EnergySurface.numerator_only: builtins.bool

Whether this affine expression is used only as a numerator factor.

Examples

numerator_only = surface.numerator_only

origin

EnergySurface.origin: builtins.str

Whether this is a physical surface or an algebraic helper (“physical” or “helper”).

Helper factors in generalized CFF need not correspond to a graph region.

Examples

provenance = surface.origin

symbol

EnergySurface.symbol: Expression

Result-local Symbolica placeholder for this stored surface.

Examples

value = surface.symbol

vertices

EnergySurface.vertices: builtins.list[builtins.int]

CFF region vertices; LTD regions belong to individual surface occurrences.

Examples

value = surface.vertices

Methods

Name Description
__repr__ Show the stored surface and its affine definition.
_repr_html_ Render the stored surface’s mathematical definition and E/H category.
to_expression Return the affine definition :math:c_0+\sum_e c_e E_e+\sum_a d_a Q_a^0.

__repr__

EnergySurface.__repr__() -> builtins.str

Show the stored surface and its affine definition.

Examples

print(surface)

_repr_html_

EnergySurface._repr_html_() -> builtins.str

Render the stored surface’s mathematical definition and E/H category.

Examples

html = surface._repr_html_()

to_expression

EnergySurface.to_expression() -> TensorExpression

Return the affine definition :math:c_0+\sum_e c_e E_e+\sum_a d_a Q_a^0.

Examples

expression = surface.to_expression()

Returns

  • TensorExpression Signed energy combination in physical OSE and external Q symbols.