BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
pjfry.cpp
Go to the documentation of this file.
1/*
2 * pjfry.cpp - interface functions
3 *
4 * this file is part of PJFry library
5 * Copyright 2011 Valery Yundin
6 */
7
8#include "cache.h"
9#include "common.h"
10#include "kinem.h"
11
12#include "pjfry.h"
13
14/* ------------------------------------------------------------
15 * ------------------------------------------------------------
16 * PENTAGON Integral section
17 * ------------------------------------------------------------
18 * ------------------------------------------------------------
19 */
20
21// Masses shifted to the left to comply with LoopTools notation
22
23pj_complex PJFry::E0v0( const double p1, const double p2, const double p3, const double p4,
24 const double p5, const double s12, const double s23, const double s34,
25 const double s45, const double s15, const double m5, const double m1,
26 const double m2, const double m3, const double m4 ) {
27 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
28 return ICache::getE( 0, kinem );
29}
30
31pj_complex PJFry::E0v0( const double p1, const double p2, const double p3, const double p4,
32 const double p5, const double s12, const double s23, const double s34,
33 const double s45, const double s15, const double m5, const double m1,
34 const double m2, const double m3, const double m4, const int ep ) {
35 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
36 return ICache::getE( abs( ep ), kinem );
37}
38
39pj_complex PJFry::E0v1( const int i, const double p1, const double p2, const double p3,
40 const double p4, const double p5, const double s12, const double s23,
41 const double s34, const double s45, const double s15, const double m5,
42 const double m1, const double m2, const double m3, const double m4 ) {
43 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
44 return -ICache::getE( 0, i, kinem );
45}
46
47pj_complex PJFry::E0v1( const int i, const double p1, const double p2, const double p3,
48 const double p4, const double p5, const double s12, const double s23,
49 const double s34, const double s45, const double s15, const double m5,
50 const double m1, const double m2, const double m3, const double m4,
51 const int ep ) {
52 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
53 return -ICache::getE( abs( ep ), i, kinem );
54}
55
56pj_complex PJFry::E0v2( const int i, const int j, const double p1, const double p2,
57 const double p3, const double p4, const double p5, const double s12,
58 const double s23, const double s34, const double s45, const double s15,
59 const double m5, const double m1, const double m2, const double m3,
60 const double m4 ) {
61 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
62 return ICache::getE( 0, i, j, kinem );
63}
64
65pj_complex PJFry::E0v2( const int i, const int j, const double p1, const double p2,
66 const double p3, const double p4, const double p5, const double s12,
67 const double s23, const double s34, const double s45, const double s15,
68 const double m5, const double m1, const double m2, const double m3,
69 const double m4, const int ep ) {
70 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
71 return ICache::getE( abs( ep ), i, j, kinem );
72}
73
74pj_complex PJFry::E0v3( const int i, const int j, const int k, const double p1,
75 const double p2, const double p3, const double p4, const double p5,
76 const double s12, const double s23, const double s34, const double s45,
77 const double s15, const double m5, const double m1, const double m2,
78 const double m3, const double m4 ) {
79 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
80 return -ICache::getE( 0, i, j, k, kinem );
81}
82
83pj_complex PJFry::E0v3( const int i, const int j, const int k, const double p1,
84 const double p2, const double p3, const double p4, const double p5,
85 const double s12, const double s23, const double s34, const double s45,
86 const double s15, const double m5, const double m1, const double m2,
87 const double m3, const double m4, const int ep ) {
88 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
89 return -ICache::getE( abs( ep ), i, j, k, kinem );
90}
91
92pj_complex PJFry::E0v4( const int i, const int j, const int k, const int l, const double p1,
93 const double p2, const double p3, const double p4, const double p5,
94 const double s12, const double s23, const double s34, const double s45,
95 const double s15, const double m5, const double m1, const double m2,
96 const double m3, const double m4 ) {
97 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
98 return ICache::getE( 0, i, j, k, l, kinem );
99}
100
101pj_complex PJFry::E0v4( const int i, const int j, const int k, const int l, const double p1,
102 const double p2, const double p3, const double p4, const double p5,
103 const double s12, const double s23, const double s34, const double s45,
104 const double s15, const double m5, const double m1, const double m2,
105 const double m3, const double m4, const int ep ) {
106 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
107 return ICache::getE( abs( ep ), i, j, k, l, kinem );
108}
109
110pj_complex PJFry::E0v5( const int i, const int j, const int k, const int l, const int m,
111 const double p1, const double p2, const double p3, const double p4,
112 const double p5, const double s12, const double s23, const double s34,
113 const double s45, const double s15, const double m5, const double m1,
114 const double m2, const double m3, const double m4 ) {
115 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
116 return -ICache::getE( 0, i, j, k, l, m, kinem );
117}
118
119pj_complex PJFry::E0v5( const int i, const int j, const int k, const int l, const int m,
120 const double p1, const double p2, const double p3, const double p4,
121 const double p5, const double s12, const double s23, const double s34,
122 const double s45, const double s15, const double m5, const double m1,
123 const double m2, const double m3, const double m4, const int ep ) {
124 Kinem5 kinem( p1, p2, p3, p4, p5, s12, s23, s34, s45, s15, m1, m2, m3, m4, m5 );
125 return -ICache::getE( abs( ep ), i, j, k, l, m, kinem );
126}
127
128/* ------------------------------------------------------------
129 * ------------------------------------------------------------
130 * BOX Integral section
131 * ------------------------------------------------------------
132 * ------------------------------------------------------------
133 */
134
135// No mass shift for scalar 4-poconst int D0
136
137pj_complex PJFry::D0v0( const double p1, const double p2, const double p3, const double p4,
138 const double s12, const double s23, const double m1, const double m2,
139 const double m3, const double m4 ) {
140 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
141 return ICache::getD( 0, kinem );
142}
143
144pj_complex PJFry::D0v0( const double p1, const double p2, const double p3, const double p4,
145 const double s12, const double s23, const double m1, const double m2,
146 const double m3, const double m4, const int ep ) {
147 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
148 return ICache::getD( abs( ep ), kinem );
149}
150
151// Masses shifted to the left to comply with LoopTools notation
152
153pj_complex PJFry::D0v1( const int i, const double p1, const double p2, const double p3,
154 const double p4, const double s12, const double s23, const double m4,
155 const double m1, const double m2, const double m3 ) {
156 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
157 return -ICache::getD( 0, i, kinem );
158}
159
160pj_complex PJFry::D0v1( const int i, const double p1, const double p2, const double p3,
161 const double p4, const double s12, const double s23, const double m4,
162 const double m1, const double m2, const double m3, const int ep ) {
163 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
164 return -ICache::getD( abs( ep ), i, kinem );
165}
166
167pj_complex PJFry::D0v2( const int i, const int j, const double p1, const double p2,
168 const double p3, const double p4, const double s12, const double s23,
169 const double m4, const double m1, const double m2, const double m3 ) {
170 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
171 return ICache::getD( 0, i, j, kinem );
172}
173
174pj_complex PJFry::D0v2( const int i, const int j, const double p1, const double p2,
175 const double p3, const double p4, const double s12, const double s23,
176 const double m4, const double m1, const double m2, const double m3,
177 const int ep ) {
178 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
179 return ICache::getD( abs( ep ), i, j, kinem );
180}
181
182pj_complex PJFry::D0v3( const int i, const int j, const int k, const double p1,
183 const double p2, const double p3, const double p4, const double s12,
184 const double s23, const double m4, const double m1, const double m2,
185 const double m3 ) {
186 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
187 return -ICache::getD( 0, i, j, k, kinem );
188}
189
190pj_complex PJFry::D0v3( const int i, const int j, const int k, const double p1,
191 const double p2, const double p3, const double p4, const double s12,
192 const double s23, const double m4, const double m1, const double m2,
193 const double m3, const int ep ) {
194 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
195 return -ICache::getD( abs( ep ), i, j, k, kinem );
196}
197
198pj_complex PJFry::D0v4( const int i, const int j, const int k, const int l, const double p1,
199 const double p2, const double p3, const double p4, const double s12,
200 const double s23, const double m4, const double m1, const double m2,
201 const double m3 ) {
202 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
203 return ICache::getD( 0, i, j, k, l, kinem );
204}
205
206pj_complex PJFry::D0v4( const int i, const int j, const int k, const int l, const double p1,
207 const double p2, const double p3, const double p4, const double s12,
208 const double s23, const double m4, const double m1, const double m2,
209 const double m3, const int ep ) {
210 Kinem4 kinem( p1, p2, p3, p4, s12, s23, m1, m2, m3, m4 );
211 return ICache::getD( abs( ep ), i, j, k, l, kinem );
212}
213
214/* ------------------------------------------------------------
215 * ------------------------------------------------------------
216 * TRIANGLE Integral section
217 * ------------------------------------------------------------
218 * ------------------------------------------------------------
219 */
220
221// No mass shift for scalar 3-poconst int C0
222
223pj_complex PJFry::C0v0( const double p1, const double p2, const double p3, const double m1,
224 const double m2, const double m3 ) {
225 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
226 return ICache::getC( 0, kinem );
227}
228
229pj_complex PJFry::C0v0( const double p1, const double p2, const double p3, const double m1,
230 const double m2, const double m3, const int ep ) {
231 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
232 return ICache::getC( abs( ep ), kinem );
233}
234
235// Masses shifted to the left to comply with LoopTools notation
236
237pj_complex PJFry::C0v1( const int i, const double p1, const double p2, const double p3,
238 const double m3, const double m1, const double m2 ) {
239 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
240 return -ICache::getC( 0, i, kinem );
241}
242
243pj_complex PJFry::C0v1( const int i, const double p1, const double p2, const double p3,
244 const double m3, const double m1, const double m2, const int ep ) {
245 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
246 return -ICache::getC( abs( ep ), i, kinem );
247}
248
249pj_complex PJFry::C0v2( const int i, const int j, const double p1, const double p2,
250 const double p3, const double m3, const double m1, const double m2 ) {
251 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
252 return ICache::getC( 0, i, j, kinem );
253}
254
255pj_complex PJFry::C0v2( const int i, const int j, const double p1, const double p2,
256 const double p3, const double m3, const double m1, const double m2,
257 const int ep ) {
258 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
259 return ICache::getC( abs( ep ), i, j, kinem );
260}
261
262pj_complex PJFry::C0v3( const int i, const int j, const int k, const double p1,
263 const double p2, const double p3, const double m3, const double m1,
264 const double m2 ) {
265 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
266 return -ICache::getC( 0, i, j, k, kinem );
267}
268
269pj_complex PJFry::C0v3( const int i, const int j, const int k, const double p1,
270 const double p2, const double p3, const double m3, const double m1,
271 const double m2, const int ep ) {
272 Kinem3 kinem( p1, p2, p3, m1, m2, m3 );
273 return -ICache::getC( abs( ep ), i, j, k, kinem );
274}
275
276/* ------------------------------------------------------------
277 * ------------------------------------------------------------
278 * BUBBLE Integral section
279 * ------------------------------------------------------------
280 * ------------------------------------------------------------
281 */
282
283// Masses shifted to the left to comply with LoopTools notation
284
285pj_complex PJFry::B0v0( const double p1, const double m2, const double m1 ) {
286 Kinem2 kinem( p1, m1, m2 );
287 return ICache::getB( 0, kinem );
288}
289
290pj_complex PJFry::B0v0( const double p1, const double m2, const double m1, const int ep ) {
291 Kinem2 kinem( p1, m1, m2 );
292 return ICache::getB( abs( ep ), kinem );
293}
294
295pj_complex PJFry::B0v1( const int i, const double p1, const double m2, const double m1 ) {
296 Kinem2 kinem( p1, m1, m2 );
297 return -ICache::getB( 0, i, kinem );
298}
299
300pj_complex PJFry::B0v1( const int i, const double p1, const double m2, const double m1,
301 const int ep ) {
302 Kinem2 kinem( p1, m1, m2 );
303 return -ICache::getB( abs( ep ), i, kinem );
304}
305
306pj_complex PJFry::B0v2( const int i, const int j, const double p1, const double m2,
307 const double m1 ) {
308 Kinem2 kinem( p1, m1, m2 );
309 return ICache::getB( 0, i, j, kinem );
310}
311
312pj_complex PJFry::B0v2( const int i, const int j, const double p1, const double m2,
313 const double m1, const int ep ) {
314 Kinem2 kinem( p1, m1, m2 );
315 return ICache::getB( abs( ep ), i, j, kinem );
316}
317
318/* ------------------------------------------------------------
319 * ------------------------------------------------------------
320 * TADPOLE Integral section
321 * ------------------------------------------------------------
322 * ------------------------------------------------------------
323 */
324
325pj_complex PJFry::A0v0( const double m1 ) { return ICache::getA( 0, Kinem1( m1 ) ); }
326
327pj_complex PJFry::A0v0( const double m1, const int ep ) {
328 return ICache::getA( abs( ep ), Kinem1( m1 ) );
329}
330
331/* ------------------------------------------------------------
332 * ------------------------------------------------------------
333 * MISC section
334 * ------------------------------------------------------------
335 * ------------------------------------------------------------
336 */
337
338double PJFry::GetMu2() { return ICache::getMu2(); }
339
340double PJFry::SetMu2( const double mu2 ) { return ICache::setMu2( mu2 ); }
341
342void PJFry::ClearCache() {
343 // clear only coefficient cache and minor cache
344 // keep scalar integrals cache
347}
348
349// =============================================================
350// =============================================================
351// =============================================================
352
353double pgetmusq_() { return PJFry::GetMu2(); }
354
355void psetmusq_( double* mu2 ) { PJFry::SetMu2( *mu2 ); }
356
357void pclearcache_() { PJFry::ClearCache(); }
358
359#ifdef USE_F2C
360// f2c,g77,ifort calling convention section (result is the first parameter)
361void pe0_( pj_complex* rslt, double* p1, double* p2, double* p3, double* p4, double* p5,
362 double* s12, double* s23, double* s34, double* s45, double* s15, double* m1,
363 double* m2, double* m3, double* m4, double* m5, int* ep ) {
364 *rslt = PJFry::E0v0( *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1, *m2, *m3,
365 *m4, *m5, *ep );
366}
367
368void pe0i_( pj_complex* rslt, int* i, double* p1, double* p2, double* p3, double* p4,
369 double* p5, double* s12, double* s23, double* s34, double* s45, double* s15,
370 double* m1, double* m2, double* m3, double* m4, double* m5, int* ep ) {
371 *rslt = PJFry::E0v1( *i, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1, *m2,
372 *m3, *m4, *m5, *ep );
373}
374
375void pe0ij_( pj_complex* rslt, int* i, int* j, double* p1, double* p2, double* p3, double* p4,
376 double* p5, double* s12, double* s23, double* s34, double* s45, double* s15,
377 double* m1, double* m2, double* m3, double* m4, double* m5, int* ep ) {
378 *rslt = PJFry::E0v2( *i, *j, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1, *m2,
379 *m3, *m4, *m5, *ep );
380}
381
382void pe0ijk_( pj_complex* rslt, int* i, int* j, int* k, double* p1, double* p2, double* p3,
383 double* p4, double* p5, double* s12, double* s23, double* s34, double* s45,
384 double* s15, double* m1, double* m2, double* m3, double* m4, double* m5,
385 int* ep ) {
386 *rslt = PJFry::E0v3( *i, *j, *k, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1,
387 *m2, *m3, *m4, *m5, *ep );
388}
389
390void pe0ijkl_( pj_complex* rslt, int* i, int* j, int* k, int* l, double* p1, double* p2,
391 double* p3, double* p4, double* p5, double* s12, double* s23, double* s34,
392 double* s45, double* s15, double* m1, double* m2, double* m3, double* m4,
393 double* m5, int* ep ) {
394 *rslt = PJFry::E0v4( *i, *j, *k, *l, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15,
395 *m1, *m2, *m3, *m4, *m5, *ep );
396}
397
398void pe0ijklm_( pj_complex* rslt, int* i, int* j, int* k, int* l, int* m, double* p1,
399 double* p2, double* p3, double* p4, double* p5, double* s12, double* s23,
400 double* s34, double* s45, double* s15, double* m1, double* m2, double* m3,
401 double* m4, double* m5, int* ep ) {
402 *rslt = PJFry::E0v5( *i, *j, *k, *l, *m, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45,
403 *s15, *m1, *m2, *m3, *m4, *m5, *ep );
404}
405
406void pd0_( pj_complex* rslt, double* p1, double* p2, double* p3, double* p4, double* s12,
407 double* s23, double* m1, double* m2, double* m3, double* m4, int* ep ) {
408 *rslt = PJFry::D0v0( *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
409}
410
411void pd0i_( pj_complex* rslt, int* i, double* p1, double* p2, double* p3, double* p4,
412 double* s12, double* s23, double* m1, double* m2, double* m3, double* m4,
413 int* ep ) {
414 *rslt = PJFry::D0v1( *i, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
415}
416
417void pd0ij_( pj_complex* rslt, int* i, int* j, double* p1, double* p2, double* p3, double* p4,
418 double* s12, double* s23, double* m1, double* m2, double* m3, double* m4,
419 int* ep ) {
420 *rslt = PJFry::D0v2( *i, *j, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
421}
422
423void pd0ijk_( pj_complex* rslt, int* i, int* j, int* k, double* p1, double* p2, double* p3,
424 double* p4, double* s12, double* s23, double* m1, double* m2, double* m3,
425 double* m4, int* ep ) {
426 *rslt = PJFry::D0v3( *i, *j, *k, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
427}
428
429void pd0ijkl_( pj_complex* rslt, int* i, int* j, int* k, int* l, double* p1, double* p2,
430 double* p3, double* p4, double* s12, double* s23, double* m1, double* m2,
431 double* m3, double* m4, int* ep ) {
432 *rslt =
433 PJFry::D0v4( *i, *j, *k, *l, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
434}
435
436void pc0_( pj_complex* rslt, double* p1, double* p2, double* p3, double* m1, double* m2,
437 double* m3, int* ep ) {
438 *rslt = PJFry::C0v0( *p1, *p2, *p3, *m1, *m2, *m3, *ep );
439}
440
441void pc0i_( pj_complex* rslt, int* i, double* p1, double* p2, double* p3, double* m1,
442 double* m2, double* m3, int* ep ) {
443 *rslt = PJFry::C0v1( *i, *p1, *p2, *p3, *m1, *m2, *m3, *ep );
444}
445
446void pc0ij_( pj_complex* rslt, int* i, int* j, double* p1, double* p2, double* p3, double* m1,
447 double* m2, double* m3, int* ep ) {
448 *rslt = PJFry::C0v2( *i, *j, *p1, *p2, *p3, *m1, *m2, *m3, *ep );
449}
450
451void pc0ijk_( pj_complex* rslt, int* i, int* j, int* k, double* p1, double* p2, double* p3,
452 double* m1, double* m2, double* m3, int* ep ) {
453 *rslt = PJFry::C0v3( *i, *j, *k, *p1, *p2, *p3, *m1, *m2, *m3, *ep );
454}
455
456void pb0_( pj_complex* rslt, double* p1, double* m1, double* m2, int* ep ) {
457 *rslt = PJFry::B0v0( *p1, *m1, *m2, *ep );
458}
459
460void pb0i_( pj_complex* rslt, int* i, double* p1, double* m1, double* m2, int* ep ) {
461 *rslt = PJFry::B0v1( *i, *p1, *m1, *m2, *ep );
462}
463
464void pb0ij_( pj_complex* rslt, int* i, int* j, double* p1, double* m1, double* m2, int* ep ) {
465 *rslt = PJFry::B0v2( *i, *j, *p1, *m1, *m2, *ep );
466}
467
468void pa0_( pj_complex* rslt, double* m1, int* ep ) { *rslt = PJFry::A0v0( *m1, *ep ); }
469#else
470// GNU calling convention section (result is a complex return value)
471pj_complex pe0_( double* p1, double* p2, double* p3, double* p4, double* p5, double* s12,
472 double* s23, double* s34, double* s45, double* s15, double* m1, double* m2,
473 double* m3, double* m4, double* m5, int* ep ) {
474 return PJFry::E0v0( *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1, *m2, *m3,
475 *m4, *m5, *ep );
476}
477
478pj_complex pe0i_( int* i, double* p1, double* p2, double* p3, double* p4, double* p5,
479 double* s12, double* s23, double* s34, double* s45, double* s15, double* m1,
480 double* m2, double* m3, double* m4, double* m5, int* ep ) {
481 return PJFry::E0v1( *i, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1, *m2, *m3,
482 *m4, *m5, *ep );
483}
484
485pj_complex pe0ij_( int* i, int* j, double* p1, double* p2, double* p3, double* p4, double* p5,
486 double* s12, double* s23, double* s34, double* s45, double* s15, double* m1,
487 double* m2, double* m3, double* m4, double* m5, int* ep ) {
488 return PJFry::E0v2( *i, *j, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1, *m2,
489 *m3, *m4, *m5, *ep );
490}
491
492pj_complex pe0ijk_( int* i, int* j, int* k, double* p1, double* p2, double* p3, double* p4,
493 double* p5, double* s12, double* s23, double* s34, double* s45,
494 double* s15, double* m1, double* m2, double* m3, double* m4, double* m5,
495 int* ep ) {
496 return PJFry::E0v3( *i, *j, *k, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15, *m1,
497 *m2, *m3, *m4, *m5, *ep );
498}
499
500pj_complex pe0ijkl_( int* i, int* j, int* k, int* l, double* p1, double* p2, double* p3,
501 double* p4, double* p5, double* s12, double* s23, double* s34,
502 double* s45, double* s15, double* m1, double* m2, double* m3, double* m4,
503 double* m5, int* ep ) {
504 return PJFry::E0v4( *i, *j, *k, *l, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45, *s15,
505 *m1, *m2, *m3, *m4, *m5, *ep );
506}
507
508pj_complex pe0ijklm_( int* i, int* j, int* k, int* l, int* m, double* p1, double* p2,
509 double* p3, double* p4, double* p5, double* s12, double* s23,
510 double* s34, double* s45, double* s15, double* m1, double* m2,
511 double* m3, double* m4, double* m5, int* ep ) {
512 return PJFry::E0v5( *i, *j, *k, *l, *m, *p1, *p2, *p3, *p4, *p5, *s12, *s23, *s34, *s45,
513 *s15, *m1, *m2, *m3, *m4, *m5, *ep );
514}
515
516pj_complex pd0_( double* p1, double* p2, double* p3, double* p4, double* s12, double* s23,
517 double* m1, double* m2, double* m3, double* m4, int* ep ) {
518 return PJFry::D0v0( *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
519}
520
521pj_complex pd0i_( int* i, double* p1, double* p2, double* p3, double* p4, double* s12,
522 double* s23, double* m1, double* m2, double* m3, double* m4, int* ep ) {
523 return PJFry::D0v1( *i, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
524}
525
526pj_complex pd0ij_( int* i, int* j, double* p1, double* p2, double* p3, double* p4, double* s12,
527 double* s23, double* m1, double* m2, double* m3, double* m4, int* ep ) {
528 return PJFry::D0v2( *i, *j, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
529}
530
531pj_complex pd0ijk_( int* i, int* j, int* k, double* p1, double* p2, double* p3, double* p4,
532 double* s12, double* s23, double* m1, double* m2, double* m3, double* m4,
533 int* ep ) {
534 return PJFry::D0v3( *i, *j, *k, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4, *ep );
535}
536
537pj_complex pd0ijkl_( int* i, int* j, int* k, int* l, double* p1, double* p2, double* p3,
538 double* p4, double* s12, double* s23, double* m1, double* m2, double* m3,
539 double* m4, int* ep ) {
540 return PJFry::D0v4( *i, *j, *k, *l, *p1, *p2, *p3, *p4, *s12, *s23, *m1, *m2, *m3, *m4,
541 *ep );
542}
543
544pj_complex pc0_( double* p1, double* p2, double* p3, double* m1, double* m2, double* m3,
545 int* ep ) {
546 return PJFry::C0v0( *p1, *p2, *p3, *m1, *m2, *m3, *ep );
547}
548
549pj_complex pc0i_( int* i, double* p1, double* p2, double* p3, double* m1, double* m2,
550 double* m3, int* ep ) {
551 return PJFry::C0v1( *i, *p1, *p2, *p3, *m1, *m2, *m3, *ep );
552}
553
554pj_complex pc0ij_( int* i, int* j, double* p1, double* p2, double* p3, double* m1, double* m2,
555 double* m3, int* ep ) {
556 return PJFry::C0v2( *i, *j, *p1, *p2, *p3, *m1, *m2, *m3, *ep );
557}
558
559pj_complex pc0ijk_( int* i, int* j, int* k, double* p1, double* p2, double* p3, double* m1,
560 double* m2, double* m3, int* ep ) {
561 return PJFry::C0v3( *i, *j, *k, *p1, *p2, *p3, *m1, *m2, *m3, *ep );
562}
563
564pj_complex pb0_( double* p1, double* m1, double* m2, int* ep ) {
565 return PJFry::B0v0( *p1, *m1, *m2, *ep );
566}
567
568pj_complex pb0i_( int* i, double* p1, double* m1, double* m2, int* ep ) {
569 return PJFry::B0v1( *i, *p1, *m1, *m2, *ep );
570}
571
572pj_complex pb0ij_( int* i, int* j, double* p1, double* m1, double* m2, int* ep ) {
573 return PJFry::B0v2( *i, *j, *p1, *m1, *m2, *ep );
574}
575
576pj_complex pa0_( double* m1, int* ep ) { return PJFry::A0v0( *m1, *ep ); }
577#endif
double p2[4]
double p1[4]
static double setMu2(const double newmu2)
Definition cache.cpp:22
static double getMu2()
Definition cache.cpp:20
static ncomplex getD(int ep, const Kinem4 &kin)
Definition cache.h:309
static ncomplex getA(int ep, const Kinem1 &kin)
Definition cache.h:327
static ncomplex getB(int ep, const Kinem2 &kin)
Definition cache.h:322
static ncomplex getC(int ep, const Kinem3 &kin)
Definition cache.h:316
static ncomplex getE(int ep, const Kinem5 &kin)
Definition cache.cpp:223
static void ClearCC()
Definition cache.cpp:43
Definition kinem.h:93
static void Clear()
Definition cache.cpp:63
pj_complex pc0_(double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition pjfry.cpp:544
pj_complex pb0ij_(int *i, int *j, double *p1, double *m1, double *m2, int *ep)
Definition pjfry.cpp:572
pj_complex pd0i_(int *i, double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep)
Definition pjfry.cpp:521
pj_complex pe0ijklm_(int *i, int *j, int *k, int *l, int *m, double *p1, double *p2, double *p3, double *p4, double *p5, double *s12, double *s23, double *s34, double *s45, double *s15, double *m1, double *m2, double *m3, double *m4, double *m5, int *ep)
Definition pjfry.cpp:508
pj_complex pc0i_(int *i, double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition pjfry.cpp:549
double pgetmusq_()
Definition pjfry.cpp:353
pj_complex pb0_(double *p1, double *m1, double *m2, int *ep)
Definition pjfry.cpp:564
pj_complex pc0ij_(int *i, int *j, double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition pjfry.cpp:554
pj_complex pd0ijkl_(int *i, int *j, int *k, int *l, double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep)
Definition pjfry.cpp:537
void pclearcache_()
Definition pjfry.cpp:357
pj_complex pc0ijk_(int *i, int *j, int *k, double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition pjfry.cpp:559
pj_complex pd0ijk_(int *i, int *j, int *k, double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep)
Definition pjfry.cpp:531
pj_complex pa0_(double *m1, int *ep)
Definition pjfry.cpp:576
pj_complex pe0ijkl_(int *i, int *j, int *k, int *l, double *p1, double *p2, double *p3, double *p4, double *p5, double *s12, double *s23, double *s34, double *s45, double *s15, double *m1, double *m2, double *m3, double *m4, double *m5, int *ep)
Definition pjfry.cpp:500
void psetmusq_(double *mu2)
Definition pjfry.cpp:355
pj_complex pe0i_(int *i, double *p1, double *p2, double *p3, double *p4, double *p5, double *s12, double *s23, double *s34, double *s45, double *s15, double *m1, double *m2, double *m3, double *m4, double *m5, int *ep)
Definition pjfry.cpp:478
pj_complex pe0ij_(int *i, int *j, double *p1, double *p2, double *p3, double *p4, double *p5, double *s12, double *s23, double *s34, double *s45, double *s15, double *m1, double *m2, double *m3, double *m4, double *m5, int *ep)
Definition pjfry.cpp:485
pj_complex pe0_(double *p1, double *p2, double *p3, double *p4, double *p5, double *s12, double *s23, double *s34, double *s45, double *s15, double *m1, double *m2, double *m3, double *m4, double *m5, int *ep)
Definition pjfry.cpp:471
pj_complex pd0_(double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep)
Definition pjfry.cpp:516
pj_complex pe0ijk_(int *i, int *j, int *k, double *p1, double *p2, double *p3, double *p4, double *p5, double *s12, double *s23, double *s34, double *s45, double *s15, double *m1, double *m2, double *m3, double *m4, double *m5, int *ep)
Definition pjfry.cpp:492
pj_complex pb0i_(int *i, double *p1, double *m1, double *m2, int *ep)
Definition pjfry.cpp:568
pj_complex pd0ij_(int *i, int *j, double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep)
Definition pjfry.cpp:526
double double * m2
Definition qcdloop1.h:83
double int * ep
Definition qcdloop1.h:82
double * mu2
Definition qcdloop1.h:82
double * m1
Definition qcdloop1.h:83