BOSS 7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
src/pjfry.h
Go to the documentation of this file.
1/*
2 * pjfry.h - interface header
3 *
4 * this file is part of PJFry library
5 * Copyright 2011 Valery Yundin
6 */
7
8#ifndef QUL_PJFRY_H
9#define QUL_PJFRY_H
10
11/* if language is C++ use standard complex template type */
12#ifdef __cplusplus
13# include <complex>
14# define QUL_DEFINE_COMPLEX(R, C) typedef std::complex<R> C
15#else
16/* if <complex.h> is included, use the C99 complex type.
17 * else define a type bit-compatible with C99 complex */
18# if defined(_Complex_I) && defined(complex) && defined(I)
19# define QUL_DEFINE_COMPLEX(R, C) typedef R _Complex C
20# else
21# define QUL_DEFINE_COMPLEX(R, C) typedef struct { R re,im; } C
22# endif
23#endif
24
25QUL_DEFINE_COMPLEX(double, pj_complex);
26
27#ifdef __cplusplus
28namespace PJFry {
29 // Functions without explicit epsilon default to eps=0
30 pj_complex E0v0(double p1, double p2, double p3, double p4, double p5,
31 double s12, double s23, double s34, double s45, double s15,
32 double m1, double m2, double m3, double m4, double m5);
33 pj_complex E0v1(int i,
34 double p1, double p2, double p3, double p4, double p5,
35 double s12, double s23, double s34, double s45, double s15,
36 double m1, double m2, double m3, double m4, double m5);
37 pj_complex E0v2(int i, int j,
38 double p1, double p2, double p3, double p4, double p5,
39 double s12, double s23, double s34, double s45, double s15,
40 double m1, double m2, double m3, double m4, double m5);
41 pj_complex E0v3(int i, int j, int k,
42 double p1, double p2, double p3, double p4, double p5,
43 double s12, double s23, double s34, double s45, double s15,
44 double m1, double m2, double m3, double m4, double m5);
45 pj_complex E0v4(int i, int j, int k, int l,
46 double p1, double p2, double p3, double p4, double p5,
47 double s12, double s23, double s34, double s45, double s15,
48 double m1, double m2, double m3, double m4, double m5);
49 pj_complex E0v5(int i, int j, int k, int l, int m,
50 double p1, double p2, double p3, double p4, double p5,
51 double s12, double s23, double s34, double s45, double s15,
52 double m1, double m2, double m3, double m4, double m5);
53
54 pj_complex E0v0(double p1, double p2, double p3, double p4, double p5,
55 double s12, double s23, double s34, double s45, double s15,
56 double m1, double m2, double m3, double m4, double m5, int ep);
57 pj_complex E0v1(int i,
58 double p1, double p2, double p3, double p4, double p5,
59 double s12, double s23, double s34, double s45, double s15,
60 double m1, double m2, double m3, double m4, double m5, int ep);
61 pj_complex E0v2(int i, int j,
62 double p1, double p2, double p3, double p4, double p5,
63 double s12, double s23, double s34, double s45, double s15,
64 double m1, double m2, double m3, double m4, double m5, int ep);
65 pj_complex E0v3(int i, int j, int k,
66 double p1, double p2, double p3, double p4, double p5,
67 double s12, double s23, double s34, double s45, double s15,
68 double m1, double m2, double m3, double m4, double m5, int ep);
69 pj_complex E0v4(int i, int j, int k, int l,
70 double p1, double p2, double p3, double p4, double p5,
71 double s12, double s23, double s34, double s45, double s15,
72 double m1, double m2, double m3, double m4, double m5, int ep);
73 pj_complex E0v5(int i, int j, int k, int l, int m,
74 double p1, double p2, double p3, double p4, double p5,
75 double s12, double s23, double s34, double s45, double s15,
76 double m1, double m2, double m3, double m4, double m5, int ep);
77
78
79 pj_complex D0v0(double p1, double p2, double p3, double p4,
80 double s12, double s23,
81 double m1, double m2, double m3, double m4);
82 pj_complex D0v1(int i,
83 double p1, double p2, double p3, double p4,
84 double s12, double s23,
85 double m1, double m2, double m3, double m4);
86 pj_complex D0v2(int i, int j,
87 double p1, double p2, double p3, double p4,
88 double s12, double s23,
89 double m1, double m2, double m3, double m4);
90 pj_complex D0v3(int i, int j, int k,
91 double p1, double p2, double p3, double p4,
92 double s12, double s23,
93 double m1, double m2, double m3, double m4);
94 pj_complex D0v4(int i, int j, int k, int l,
95 double p1, double p2, double p3, double p4,
96 double s12, double s23,
97 double m1, double m2, double m3, double m4);
98
99 pj_complex D0v0(double p1, double p2, double p3, double p4,
100 double s12, double s23,
101 double m1, double m2, double m3, double m4, int ep);
102 pj_complex D0v1(int i,
103 double p1, double p2, double p3, double p4,
104 double s12, double s23,
105 double m1, double m2, double m3, double m4, int ep);
106 pj_complex D0v2(int i, int j,
107 double p1, double p2, double p3, double p4,
108 double s12, double s23,
109 double m1, double m2, double m3, double m4, int ep);
110 pj_complex D0v3(int i, int j, int k,
111 double p1, double p2, double p3, double p4,
112 double s12, double s23,
113 double m1, double m2, double m3, double m4, int ep);
114 pj_complex D0v4(int i, int j, int k, int l,
115 double p1, double p2, double p3, double p4,
116 double s12, double s23,
117 double m1, double m2, double m3, double m4, int ep);
118
119
120 pj_complex C0v0(double p1, double p2, double p3,
121 double m1, double m2, double m3);
122 pj_complex C0v1(int i,
123 double p1, double p2, double p3,
124 double m1, double m2, double m3);
125 pj_complex C0v2(int i, int j,
126 double p1, double p2, double p3,
127 double m1, double m2, double m3);
128 pj_complex C0v3(int i, int j, int k,
129 double p1, double p2, double p3,
130 double m1, double m2, double m3);
131
132 pj_complex C0v0(double p1, double p2, double p3,
133 double m1, double m2, double m3, int ep);
134 pj_complex C0v1(int i,
135 double p1, double p2, double p3,
136 double m1, double m2, double m3, int ep);
137 pj_complex C0v2(int i, int j,
138 double p1, double p2, double p3,
139 double m1, double m2, double m3, int ep);
140 pj_complex C0v3(int i, int j, int k,
141 double p1, double p2, double p3,
142 double m1, double m2, double m3, int ep);
143
144
145 pj_complex B0v0(double p1, double m1, double m2);
146 pj_complex B0v1(int i,
147 double p1, double m1, double m2);
148 pj_complex B0v2(int i, int j,
149 double p1, double m1, double m2);
150 pj_complex B0v3(int i, int j, int k,
151 double p1, double m1, double m2);
152
153 pj_complex B0v0(double p1, double m1, double m2, int ep);
154 pj_complex B0v1(int i,
155 double p1, double m1, double m2, int ep);
156 pj_complex B0v2(int i, int j,
157 double p1, double m1, double m2, int ep);
158 pj_complex B0v3(int i, int j, int k,
159 double p1, double m1, double m2, int ep);
160
161
162 pj_complex A0v0(double m1);
163 pj_complex A0v0(double m1, int ep);
164
165 double GetMu2();
166 double SetMu2(double newmu2);
167 void ClearCache();
168}
169#endif /* __cplusplus */
170
171
172#ifdef __cplusplus
173extern "C" {
174#endif /* __cplusplus */
175
176double pgetmusq_();
177void psetmusq_(double *mu2);
178void pclearcache_();
179
180#ifdef USE_F2C
181// f2c,g77,ifort calling convention section (result is the first parameter)
182void pa0_(pj_complex *rslt, double *m1, int *ep);
183
184void pb0_(pj_complex *rslt, double *p1, double *m1, double *m2, int *ep);
185void pb0i_(pj_complex *rslt, int *i,
186 double *p1, double *m1, double *m2, int *ep);
187void pb0ij_(pj_complex *rslt, int *i, int *j,
188 double *p1, double *m1, double *m2, int *ep);
189
190void pc0_(pj_complex *rslt, double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
191void pc0i_(pj_complex *rslt, int *i,
192 double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
193void pc0ij_(pj_complex *rslt, int *i, int *j,
194 double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
195void pc0ijk_(pj_complex *rslt, int *i, int *j, int *k,
196 double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
197
198void pd0_(pj_complex *rslt, double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
199void pd0i_(pj_complex *rslt, int *i,
200 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
201void pd0ij_(pj_complex *rslt, int *i, int *j,
202 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
203void pd0ijk_(pj_complex *rslt, int *i, int *j, int *k,
204 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
205void pd0ijkl_(pj_complex *rslt, int *i, int *j, int *k, int *l,
206 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
207
208void pe0_(pj_complex *rslt, 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);
209void pe0i_(pj_complex *rslt, int *i,
210 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);
211void pe0ij_(pj_complex *rslt, int *i, int *j,
212 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);
213void pe0ijk_(pj_complex *rslt, int *i, int *j, int *k,
214 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);
215void pe0ijkl_(pj_complex *rslt, int *i, int *j, int *k, int *l,
216 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);
217void pe0ijklm_(pj_complex *rslt, int *i, int *j, int *k, int *l, int *m,
218 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);
219#else
220// GNU calling convention section (result is a complex return value)
221pj_complex pa0_(double *m1, int *ep);
222
223pj_complex pb0_(double *p1, double *m1, double *m2, int *ep);
224pj_complex pb0i_(int *i,
225 double *p1, double *m1, double *m2, int *ep);
226pj_complex pb0ij_(int *i, int *j,
227 double *p1, double *m1, double *m2, int *ep);
228
229pj_complex pc0_(double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
230pj_complex pc0i_(int *i,
231 double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
232pj_complex pc0ij_(int *i, int *j,
233 double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
234pj_complex pc0ijk_(int *i, int *j, int *k,
235 double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep);
236
237pj_complex pd0_(double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
238pj_complex pd0i_(int *i,
239 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
240pj_complex pd0ij_(int *i, int *j,
241 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
242pj_complex pd0ijk_(int *i, int *j, int *k,
243 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
244pj_complex pd0ijkl_(int *i, int *j, int *k, int *l,
245 double *p1, double *p2, double *p3, double *p4, double *s12, double *s23, double *m1, double *m2, double *m3, double *m4, int *ep);
246
247pj_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);
248pj_complex pe0i_(int *i,
249 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);
250pj_complex pe0ij_(int *i, int *j,
251 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);
252pj_complex pe0ijk_(int *i, int *j, int *k,
253 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);
254pj_complex pe0ijkl_(int *i, int *j, int *k, int *l,
255 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);
256pj_complex pe0ijklm_(int *i, int *j, int *k, int *l, int *m,
257 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);
258#endif
259
260#ifdef USE_GOLEM_MODE
261 double pggetmusq_();
262 void pgsetmusq_(double *mu2);
263
264 void pginitgolem95_(int *n);
265 double pggetmat_(int *i, int *j);
266 void pgpreparesmatrix_();
267 void pgsetmat_(int *i, int *j, double *val);
268
269// 5 point base
270 pj_complex pga50_(int *s, int *ep);
271 pj_complex pga51_(int *i, int *s, int *ep);
272 pj_complex pga52_(int *i, int *j, int *s, int *ep);
273 pj_complex pgb52_(int *s, int *ep);
274 pj_complex pga53_(int *i, int *j, int *k, int *s, int *ep);
275 pj_complex pgb53_(int *i, int *s, int *ep);
276 pj_complex pga54_(int *i, int *j, int *k, int *l, int *s, int *ep);
277 pj_complex pgb54_(int *i, int *j, int *s, int *ep);
278 pj_complex pgc54_(int *s, int *ep);
279 pj_complex pga55_(int *i, int *j, int *k, int *l, int *m, int *s, int *ep);
280 pj_complex pgb55_(int *i, int *j, int *k, int *s, int *ep);
281 pj_complex pgc55_(int *i, int *s, int *ep);
282
283 pj_complex pga40_(int *s, int *ep);
284 pj_complex pga41_(int *i, int *s, int *ep);
285 pj_complex pga42_(int *i, int *j, int *s, int *ep);
286 pj_complex pgb42_(int *s, int *ep);
287 pj_complex pga43_(int *i, int *j, int *k, int *s, int *ep);
288 pj_complex pgb43_(int *i, int *s, int *ep);
289 pj_complex pga44_(int *i, int *j, int *k, int *l, int *s, int *ep);
290 pj_complex pgb44_(int *i, int *j, int *s, int *ep);
291 pj_complex pgc44_(int *s, int *ep);
292
293 pj_complex pga30_(int *s, int *ep);
294 pj_complex pga31_(int *i, int *s, int *ep);
295 pj_complex pga32_(int *i, int *j, int *s, int *ep);
296 pj_complex pgb32_(int *s, int *ep);
297 pj_complex pga33_(int *i, int *j, int *k, int *s, int *ep);
298 pj_complex pgb33_(int *i, int *s, int *ep);
299
300 pj_complex pga20_(int *s, int *ep);
301 pj_complex pga21_(int *i, int *s, int *ep);
302 pj_complex pga22_(int *i, int *j, int *s, int *ep);
303 pj_complex pgb22_(int *s, int *ep);
304
305#endif /* USE_GOLEM_MODE */
306
307#ifdef __cplusplus
308}
309#endif
310
311#endif /* QUL_PJFRY_H */
const Int_t n
XmlRpcServer s
Definition: HelloServer.cpp:11
pj_complex pc0_(double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition: pjfry.cpp:665
pj_complex pb0ij_(int *i, int *j, double *p1, double *m1, double *m2, int *ep)
Definition: pjfry.cpp:703
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:633
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:618
pj_complex pc0i_(int *i, double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition: pjfry.cpp:671
double pgetmusq_()
Definition: pjfry.cpp:408
pj_complex pb0_(double *p1, double *m1, double *m2, int *ep)
Definition: pjfry.cpp:692
#define QUL_DEFINE_COMPLEX(R, C)
Definition: src/pjfry.h:21
pj_complex pc0ij_(int *i, int *j, double *p1, double *p2, double *p3, double *m1, double *m2, double *m3, int *ep)
Definition: pjfry.cpp:678
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:657
void pclearcache_()
Definition: pjfry.cpp:418
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:685
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:649
pj_complex pa0_(double *m1, int *ep)
Definition: pjfry.cpp:709
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:610
void psetmusq_(double *mu2)
Definition: pjfry.cpp:413
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:586
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:594
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:579
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:626
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:602
pj_complex pb0i_(int *i, double *p1, double *m1, double *m2, int *ep)
Definition: pjfry.cpp:697
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:641