reduze 2 - distributed feynman integral...

32
Reduze 2 - Distributed Feynman Integral Reduction C. Studerus Universität Bielefeld in collaboration with A. v. Manteuffel (Mainz U.) PSI: Particle Theory Seminar March 1, 2012 C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 1 / 25

Upload: others

Post on 24-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Reduze 2 - Distributed Feynman Integral Reduction

C. Studerus

Universität Bielefeld

in collaboration with A. v. Manteuffel (Mainz U.)

PSI: Particle Theory SeminarMarch 1, 2012

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 1 / 25

Page 2: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Outline

1 Introduction

2 Job system (load balancing)

3 Topological analyis

4 Distributed reductions

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 2 / 25

Page 3: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Outline

1 Introduction

2 Job system (load balancing)

3 Topological analyis

4 Distributed reductions

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 3 / 25

Page 4: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Overwiew

Reduze 2

computer program written in C++ to perform reductions of scalar Feynmanintegrals to master integrals

arXiv:1201.4330, A.v.Manteuffel, CSt

successor and major rewrite of Reduze 1 by CSt

dependenciesI requires: GiNaC by Bauer, Frink, KreckelI optional: Open MPII optional: Berkeley DBI optional: Fermat CAS by Lewis (closed source, non-free)

Main features:

topological analysis of graphs of integrals

fully parallelized reductions

resume aborted reductions

computation of QCD diagram interferences up to masters

generation of differential equations for masters

. . .

QGRAF input and FORM, Mathematica, Maple output

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 4 / 25

Page 5: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Typical steps in calculations in pertubative Quantum FieldTheories

generate Feynman diagrams: e.g. QGRAF by Nogueira, FeynArts by Hahn

apply Feynman rules

build scalar interference terms: multiply diagrams or use projectors

scalar Feynman integrals: loop/external momenta ki/pj∫ddk1 . . .

∫ddkL

(qiqj)αij

D r11 . . .D rt

t

, Di = q2combi −m2

i , qn ∈ {ki , pj}

use integration-by-parts (IBP) identities to reduce the integrals to master integrals:e.g. AIR by Anastasiou, FIRE by Smirnov, Reduze

calculate the master integrals

. . .

need: standardized representation of integrals

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 5 / 25

Page 6: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Indexed Integrals

define integral family (“auxiliary topology”): set of propagators {1/D1, . . . , 1/DN}such that: all scalar products are linear combinations of Di and kinematic invariants

counting propagator exponents indexes integrals:

Feynman integrals of some topologies → ZN∫

ddk1 · · · ddkL1

Dn11 · · ·D

nNN

7→ {n1, . . . , nN} with ni ∈ Z

integrals belong to a sector of an integral family

I[FAM T ID R S n 1 ... n 9]

I[planarbox 5 182 6 1 -1 1 1 0 1 1 0 2 0]

define an ordering for integrals (e.g. fewer denominators means simpler)

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 6 / 25

Page 7: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Overwiev of the main jobs in Reduze 2

input: a list of user-defined integral families

job: setup sector mappings

construct graphs for the sectors (identify physical sectors)

find zero sectors

identify isomorphic graphs

derive shifts to relate isomorphic sectors (sector relations)

find shifts from sector to itself (sector symmetries)

job: reduce sectors

reduce integrals of a collection of sectors to master integrals

need other jobs:

generate indexed integrals (seed integrals)

generate IBP identities from the seed integrals

use reduction results from sub-sectors → reduce them first

need a job system to handle the dependencies

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 7 / 25

Page 8: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Outline

1 Introduction

2 Job system (load balancing)

3 Topological analyis

4 Distributed reductions

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 8 / 25

Page 9: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Available jobs in Reduze 2

$ reduze -h jobs

List of available job types:

apply_crossings: Generates reduction results for crossed sectors.

cat_files: Concatenates files.

collect_integrals: Collects all integrals appearing in the input file.

compute_diagram_interferences: Computes interferences of diagrams.

compute_differential_equations: Computes derivatives of integrals wrt invariants.

export: Exports to FORM, Mathematica or Maple format.

extract_database_contents: Extracts intermediate results from aborted reduction.

find_diagram_shifts: Matches diagrams to sectors via graphs.

find_diagram_shifts_alt: Matches diagrams to sectors via combinatorics.

generate_identities: Generates identities like IBPs for given seeds.

generate_seeds: Generates integrals from a sector.

insert_reductions: Inserts reductions in expressions.

normalize: Simplifies linear combinations and equations.

print_reduction_info_file: Analyzes reductions in a file.

print_reduction_info_sectors: Analyzes reductions available for sectors.

print_sector_info: Prints diagrams and other information for sectors.

reduce_files: Reduces identities in given files.

reduce_sectors: Reduces integrals from a selection of sectors.

run_reduction: Low-level job to run a reduction.

select_reductions: Selects reductions for integrals.

setup_sector_mappings: Finds shifts between sectors via graphs.

setup_sector_mappings_alt: Finds shifts between sectors via combinatorics.

sum_terms: Sums terms.

test: Performs some tests.

verify_same_terms: Verifies two files contain the same terms.

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 9 / 25

Page 10: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

MPI processes in Reduze 2

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 10 / 25

Page 11: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Dynamical load balancing

m a n a g e r

worker 1

worker 2

worker 3

worker 4

high efficiency: manager idle, workers busy

dynamically reassing workers to managersI minimal worker requirementI worker distribution

0.2 0.4 0.6 0.8 1.0eff

0.2

0.4

0.6

0.8

1.0

1.2

1.4

N

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 11 / 25

Page 12: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Outline

1 Introduction

2 Job system (load balancing)

3 Topological analyis

4 Distributed reductions

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 12 / 25

Page 13: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Graph Isomorphism

Graph G = (V ,E), vertices V and edges E (pairs of vertices)

Representation of graphs: eg. adjacency matrix

0 1 0 01 0 2 00 2 0 10 0 1 0

Two graphs G1 = (V ,E1), G2 = (V ,E2) are isomorphic, G1 ∼ G2, if there is apermutation σ : V → V such that σ(E1) = E2

eg. if (v1, v2) has k edges then also (σ(v1), σ(v2))

Canonical labeling (unique representation):Permute the n vertices such that the adjacency matrix is minimal w.r.t.lexicographic ordering: n! cases to check (if allowed, if minimal)

Refinement procedure: Brendan D. McKay, Practical Graph Isomorphism, 1981define a degree for vertices (#adjacent edges) and partition vertices into a sequenceof subsets with equal degree (equitable partition)

({0,1,2,3}) → ({0,3}, {1,2}) ⇒ ({0},{3},{1},{2}) →

0 0 0 10 0 1 00 1 0 21 0 2 0

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 13 / 25

Page 14: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Graphs of a sector

Spanning tree of a graph are all connected tree graphs which contain all vertices ofthe original graph (Obtained by deleting #loop edges).

U-polynomialSum over product of edges not in the spanning tree:

U = x1x2 + x1x5 + x4x5 + x4x2 + x3x1 + x3x2 + x3x5 + x3x4

Can also be calculated by given (inverse) propagators Pi = q2 −m2i :

U = det(M), kiMijkj = xlPl , loop momenta ki

Select propagators of one term, eg. x1, x2, attach them to a node, split vertex andtry to insert the rest of the propagators (momentum conservation)

Given a Feynman integral (sector) ⇒ corresponding graph is not unique in general.

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 14 / 25

Page 15: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Matroids

Given a Feynman integral (sector) ⇒ corresponding graph is not unique in general.

Both graphs have the same (cyclic) matroidI matroids introduced as a generalization of the concept of “linear independence”I graphs with the same cyclic matroid have the same U-polynomial

Theorem: Hassler Whitney, 2-isomorphic graphs, AJM 55:245-254, 1933

Two cyclic matroids are isomorphic if their graphs can be transformed into eachother by a sequence of the operations:

I vertex cleaving and identification:

I twisting:

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 15 / 25

Page 16: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Outline

1 Introduction

2 Job system (load balancing)

3 Topological analyis

4 Distributed reductions

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 16 / 25

Page 17: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Integration by Parts (IBP) Identities

ki/pj loop/(independent)external momentaqn ∈ {ki , pj}I′(p1, . . . , pN , k1, . . . , kL) is integrand of a Feynman integral∫

ddki∂

∂kµi

[qµ I′(p1, . . . , pN , k1, . . . , kL)

]= 0

sum over µ (no sum over i)L(N + L) equations per seed integral

Laporta algorithm:

define ordering for integrals

generate IBPs: sparse system of equations

solve linear system of equations

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 17 / 25

Page 18: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Parallelization of Laporta-Algorithm

generate the system of equations

sort equations in blocks with the same leading integral

send blocks to workers

I5 + c14I4 + c13I3 = 0

I5 + c24I4 + c22I2 = 0

I5 + c33I3 + c32I2 = 0

I3 + c42I2 = 0

I3 + c51I1 = 0

I2 + c61I1 = 0

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 18 / 25

Page 19: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 20: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 21: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 22: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 23: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 24: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 25: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 26: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Example: distributed reduction of one sector

visualisation of reduction (subtopology of 2-loop massive double box):

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 19 / 25

Page 27: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Performance: single sectors

GiNaC Fermat

æ

æ

æ

æ

æ

2 3 5 7 10 15 20N1.0

5.0

2.0

3.0

1.5

time @hD

æ

æ

æ

æ

æ

æ

2 3 5 10 20 50N1

23

5

10

20

time @hD

æ

æ

æ

æ

æ

2 3 5 7 10 15 20N0.5

1.0

0.75

1.5

2.0time @hD

æ

æ

æ

æ æ

2 3 5 10 15 20N

1.00

0.50

2.00

0.30

1.50

0.70

time @hD

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 20 / 25

Page 28: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Performance: sector tree

(3,385)

(2,384)

(3,388)(3,392)

(4,39)

(3,38)

(4,46)(4,135)

(3,134)

(4,142) (4,149)

(3,148)

(4,150)(4,156) (4,166)(4,195)

(3,194)

(4,198)(4,210)(4,387) (4,389)(4,393)(4,394) (4,396)(4,408) (4,417)(4,418)

(5,47) (5,55)

(4,53)

(5,61)(5,62) (5,103)

(4,99)

(5,107)(5,143) (5,151)(5,157)(5,158) (5,167)(5,174) (5,181)(5,182)(5,199)(5,211)(5,214) (5,227)(5,391)(5,395) (5,397) (5,398)(5,409) (5,412) (5,419) (5,421) (5,422)(5,425)(5,426)

(6,63) (6,111)(6,159) (6,175) (6,183) (6,189)(6,190)(6,215) (6,231) (6,243)(6,399)(6,413) (6,423)(6,427) (6,429) (6,430)(6,442)

(7,191) (7,247)(7,431)(7,446)

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 21 / 25

Page 29: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Performance: sector tree

s ∈ {0, 1, 2, 3}

æ

æ

æ

7 10 15 20 30 50N1.0

10.0

5.0

2.0

3.0

1.5

7.0

time @hD

s ∈ {0, 1, 2, 3, 4}

æ

æ

æ

æ

1005020 3015 70N5

7

10

15

20

time @hD

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 22 / 25

Page 30: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Usage

Required input files in directory ”config“

# kinematics.yaml

kinematics:

incoming_momenta: [ p1, p2 ]

outgoing_momenta: [ p3, p4 ]

momentum_conservation: [p4, p1 + p2 - p3]

kinematic_invariants:

- [mt, 1]

- [s, 2]

- [t, 2]

scalarproduct_rules:

- [[p1,p1], 0]

- [[p2,p2], 0]

- [[p3,p3], mt^2]

- [[p1+p2, p1+p2], s]

- [[p1-p3, p1-p3], t]

- [[p2-p3, p2-p3], -s-t+2*mt^2] # == u

symbol_to_replace_by_one: mt

# integralfamilies.yaml

integralfamilies:

- name: planarbox

loop_momenta: [k1, k2]

propagators:

- [ k1, 0 ]

- [ k2, 0 ]

- [ k1-k2, 0 ]

- [ k1-p1, 0 ]

- [ k2-p1, 0 ]

- [ k1-p1-p2, 0 ]

- [ k2-p1-p2, 0 ]

- [ k1-p3, mt ]

- [ k2-p3, mt ]

permutation_symmetries:

- [ [ 1, 6 ], [ 2, 7 ] ]

- [ [ 1, 2 ], [ 4, 5 ], [ 6, 7 ], [ 8, 9] ]

Optional input files in directory ”config“

# global.yaml

paths:

fermat: /path/to/fermat/executable

# feynmanrules.yaml

feynmanrules: {} # see example 2 of the source package

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 23 / 25

Page 31: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Usage

Job file:

# myjobs.yaml

jobs:

- setup_sector_mappings: {}

- reduce_sectors:

sector_selection:

select_recursively:

- [planarbox, 182]

identities:

ibp:

- { r: [t, 5], s: [0, 1] }

sector_symmetries:

- { r: [t, t], s: [0, 1] }

reduzer_options:

use_transactions: true

- select_reductions:

input_file: "myintegrals"

output_file: "myintegrals.sol"

- export:

input_file: "myintegrals.sol"

output_file: "myintegrals.sol.inc"

output_format: "form"

and start the program with:

$ reduze myjobs.yaml

or in parallel mode:

$ mpirun -np 32 reduze myjobs.yaml

Output: default directories: graphs, sectormappings, reductions, log, tmp

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 24 / 25

Page 32: Reduze 2 - Distributed Feynman Integral Reductionltpth.web.psi.ch/seminars/2012/slides-studerus-20120301.pdf · 2012-03-01 · Reduze2 - Distributed Feynman Integral Reduction C

Thank you!

C. Studerus (Bielefeld U.) Reduze 2 PSI ’12 25 / 25