17 printf(
"PJFRY init\n" );
18 const double dbl_min = std::numeric_limits<double>::min();
22 if ( qlprec.xalogm < dbl_min )
24 qlprec.xalogm = dbl_min;
25 qlprec.xalog2 = sqrt( dbl_min );
27 printf(
"Set xalogm to normalized value %e\n", qlprec.xalogm );
28 printf(
"Set xalog2 to normalized value %e\n", qlprec.xalog2 );
31 if ( qlprec.xclogm < dbl_min )
33 qlprec.xclogm = dbl_min;
34 qlprec.xclog2 = sqrt( dbl_min );
36 printf(
"Set xclogm to normalized value %e\n", qlprec.xclogm );
37 printf(
"Set xclog2 to normalized value %e\n", qlprec.xclog2 );
44 printf(
"Disable FF warnings %d\n", qlflag.lwarn );
59 std::complex<double> rslt;
91 std::complex<double> rslt;
100 ivalue.
val[2] = rslt;
126 std::complex<double> rslt;
129 ivalue.
val[0] = rslt;
132 ivalue.
val[1] = rslt;
135 ivalue.
val[2] = rslt;
156 double s12 = k.
s12();
157 double s23 = k.
s23();
164 if ( s12 == 0. || s23 == 0. )
166 if (
p1 != 0. && p3 != 0. )
169 std::complex<double> rslt;
172 ( &rslt, &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2, &m4, &
mu2, &
ep );
173 ivalue.
val[0] = rslt;
176 ( &rslt, &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2, &m4, &
mu2, &
ep );
177 ivalue.
val[1] = rslt;
180 ( &rslt, &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2, &m4, &
mu2, &
ep );
181 ivalue.
val[2] = rslt;
184 ivalue.
val[0] =
F77_FUNC( qli4, QLI4 )( &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2,
187 ivalue.
val[1] =
F77_FUNC( qli4, QLI4 )( &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2,
190 ivalue.
val[2] =
F77_FUNC( qli4, QLI4 )( &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2,
194 else if (
p2 != 0. && p4 != 0. )
197 std::complex<double> rslt;
200 ( &rslt, &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3, &
m1, &
mu2, &
ep );
201 ivalue.
val[0] = rslt;
204 ( &rslt, &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3, &
m1, &
mu2, &
ep );
205 ivalue.
val[1] = rslt;
208 ( &rslt, &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3, &
m1, &
mu2, &
ep );
209 ivalue.
val[2] = rslt;
212 ivalue.
val[0] =
F77_FUNC( qli4, QLI4 )( &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3,
215 ivalue.
val[1] =
F77_FUNC( qli4, QLI4 )( &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3,
218 ivalue.
val[2] =
F77_FUNC( qli4, QLI4 )( &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3,
222 else { assert( 0 ); }
227 std::complex<double> rslt;
230 ( &rslt, &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4, &
mu2, &
ep );
231 ivalue.
val[0] = rslt;
234 ( &rslt, &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4, &
mu2, &
ep );
235 ivalue.
val[1] = rslt;
238 ( &rslt, &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4, &
mu2, &
ep );
239 ivalue.
val[2] = rslt;
242 ivalue.
val[0] =
F77_FUNC( qli4, QLI4 )( &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4,
245 ivalue.
val[1] =
F77_FUNC( qli4, QLI4 )( &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4,
248 ivalue.
val[2] =
F77_FUNC( qli4, QLI4 )( &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4,
259 printf(
"PJFRY init\n" );
262 F77_FUNC_( avh_olo_mu_set, AVH_OLO_MU_SET )( &mu );
265 F77_FUNC_( avh_olo_onshell, AVH_OLO_ONSHELL )( &thrs );
272 std::complex<double> rslt[3];
273 F77_FUNC_( avh_olo_a0m, AVH_OLO_A0M )( rslt, &
m1 );
275 ivalue.
val[0] = rslt[0];
276 ivalue.
val[1] = rslt[1];
277 ivalue.
val[2] = rslt[2];
287 std::complex<double> rslt[3];
290 ivalue.
val[0] = rslt[0];
291 ivalue.
val[1] = rslt[1];
292 ivalue.
val[2] = rslt[2];
305 std::complex<double> rslt[3];
308 ivalue.
val[0] = rslt[0];
309 ivalue.
val[1] = rslt[1];
310 ivalue.
val[2] = rslt[2];
321 double s12 = k.
s12();
322 double s23 = k.
s23();
327 std::complex<double> rslt[3];
328 if ( s12 == 0. || s23 == 0. )
330 if (
p1 != 0. && p3 != 0. )
333 ( rslt, &s12, &
p2, &s23, &p4, &
p1, &p3, &
m1, &m3, &
m2, &m4 );
335 else if (
p2 != 0. && p4 != 0. )
338 ( rslt, &s23, &p3, &s12, &
p1, &
p2, &p4, &
m2, &m4, &m3, &
m1 );
340 else { assert( 0 ); }
345 ( rslt, &
p1, &
p2, &p3, &p4, &s12, &s23, &
m1, &
m2, &m3, &m4 );
348 ivalue.
val[0] = rslt[0];
349 ivalue.
val[1] = rslt[1];
350 ivalue.
val[2] = rslt[2];
#define F77_FUNC(name, NAME)
#define F77_FUNC_(name, NAME)
ICache::Ival qlI1(const Kinem1 &k)
ICache::Ival qlI2(const Kinem2 &k)
ICache::Ival qlI4(const Kinem4 &k)
ICache::Ival qlI3(const Kinem3 &k)