Page MenuHomeHEPForge

function_library.py
No OneTemporary

function_library.py

# This file is part of the UFO.
#
# This file contains definitions for functions that
# are extensions of the cmath library, and correspond
# either to functions that are in cmath, but inconvenient
# to access from there (e.g. z.conjugate()),
# or functions that are simply not defined.
#
#
__date__ = "22 July 2010"
__author__ = "claude.duhr@durham.ac.uk"
import cmath
from object_library import all_functions, Function
#
# shortcuts for functions from cmath
#
complexconjugate = Function(name = 'complexconjugate',
arguments = ('z',),
expression = 'z.conjugate()')
re = Function(name = 're',
arguments = ('z',),
expression = 'z.real')
im = Function(name = 'im',
arguments = ('z',),
expression = 'z.imag')
# New functions (trigonometric)
sec = Function(name = 'sec',
arguments = ('z',),
expression = '1./cmath.cos(z)')
asec = Function(name = 'asec',
arguments = ('z',),
expression = 'cmath.acos(1./z)')
csc = Function(name = 'csc',
arguments = ('z',),
expression = '1./cmath.sin(z)')
acsc = Function(name = 'acsc',
arguments = ('z',),
expression = 'cmath.asin(1./z)')
cot = Function(name = 'cot',
arguments = ('z',),
expression = '1./cmath.tan(z)')
# Heaviside theta function
theta_function = Function(name = 'theta_function',
arguments = ('x','y','z'),
expression = 'y if x else z')
# Auxiliary functions for NLO
cond = Function(name = 'cond',
arguments = ('condition','ExprTrue','ExprFalse'),
expression = '(ExprTrue if condition==0.0 else ExprFalse)')
reglog = Function(name = 'reglog',
arguments = ('z'),
expression = '(0.0 if z==0.0 else cmath.log(z))')

File Metadata

Mime Type
text/x-python
Expires
Sat, Dec 21, 1:30 PM (19 h, 53 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4022965
Default Alt Text
function_library.py (1 KB)

Event Timeline