VakintExpression

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

VakintExpression

class VakintExpression

A Vakint integral split into its numerator and normalized topology structure.

Construct this wrapper from a Symbolica expression before applying Vakint operations.

Methods

Name Description
__new__ Split a Symbolica expression into Vakint numerator and topology components.
__str__ String representation of the VakintExpression.
to_expression Convert the VakintExpression back to a Symbolica Expression.

__new__

VakintExpression.__new__(atom: typing.Any) -> VakintExpression

Split a Symbolica expression into Vakint numerator and topology components.

Examples

>>> from symbolica import E
>>> from symbolica.community.hepkit.vakint import VakintExpression
>>> integral = E('''
...     (
...         k(1,11)*k(2,11)*k(1,22)*k(2,22)
...       + p(1,11)*k(3,11)*k(3,22)*p(2,22)
...       + p(1,11)*p(2,11)*(k(2,22)+k(1,22))*k(2,22)
...     )*topo(
...          prop(1,edge(1,2),k(1),muvsq,1)
...         * prop(2,edge(2,3),k(2),muvsq,1)
...         * prop(3,edge(3,1),k(3),muvsq,1)
...         * prop(4,edge(1,4),k(3)-k(1),muvsq,1)
...         * prop(5,edge(2,4),k(1)-k(2),muvsq,1)
...         * prop(6,edge(3,4),k(2)-k(3),muvsq,1)
...     )
... ''', default_namespace="vakint")
>>> wrapped = VakintExpression(integral)
>>> "topo(" in str(wrapped)
True

Parameters

  • atom (Expression) A Symbolica Expression containing a vakint integral, i.e. a sum of terms, each a product of a numerator and a vakint::topo(...) structure.

__str__

VakintExpression.__str__() -> builtins.str

String representation of the VakintExpression.

to_expression

VakintExpression.to_expression() -> Expression

Convert the VakintExpression back to a Symbolica Expression.

Examples

>>> from symbolica import E
>>> from symbolica.community.hepkit.vakint import VakintExpression
>>> integral = VakintExpression(E('''
...     k(1,11)*k(1,11)
...     *topo(prop(1,edge(1,1),k(1),muvsq,1))
... ''', default_namespace="vakint"))
>>> "topo(" in str(integral.to_expression())
True