1
2 #include "simint/ostei/gen/ostei_generated.h"
3 //////////////////////////////////////////////
4 // VRR: ( s s | h s )
5 //////////////////////////////////////////////
VRR_K_s_s_h_s(SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_h_s,const SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_g_s,const SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_f_s,const SIMINT_DBLTYPE * Q_PA,const SIMINT_DBLTYPE a_over_q,const SIMINT_DBLTYPE * aoq_PQ,const SIMINT_DBLTYPE one_over_2q,const int num_n)6 void VRR_K_s_s_h_s(
7 SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_h_s,
8 const SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_g_s,
9 const SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_f_s,
10 const SIMINT_DBLTYPE * Q_PA,
11 const SIMINT_DBLTYPE a_over_q,
12 const SIMINT_DBLTYPE * aoq_PQ,
13 const SIMINT_DBLTYPE one_over_2q,
14 const int num_n)
15 {
16 int n = 0;
17 const SIMINT_DBLTYPE vrr_const_1_over_2q = SIMINT_MUL(SIMINT_DBLSET1(1), one_over_2q);
18 const SIMINT_DBLTYPE vrr_const_4_over_2q = SIMINT_MUL(SIMINT_DBLSET1(4), one_over_2q);
19
20 // Forming PRIM_INT__s_s_h_s[num_n * 21];
21 for(n = 0; n < num_n; ++n) // loop over orders of auxiliary function
22 {
23
24 PRIM_INT__s_s_h_s[n * 21 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_g_s[n * 15 + 0]);
25 PRIM_INT__s_s_h_s[n * 21 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_g_s[(n+1) * 15 + 0], PRIM_INT__s_s_h_s[n * 21 + 0]);
26 PRIM_INT__s_s_h_s[n * 21 + 0] = SIMINT_FMADD( vrr_const_4_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 0], PRIM_INT__s_s_f_s[n * 10 + 0]), PRIM_INT__s_s_h_s[n * 21 + 0]);
27
28 PRIM_INT__s_s_h_s[n * 21 + 1] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 0]);
29 PRIM_INT__s_s_h_s[n * 21 + 1] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 0], PRIM_INT__s_s_h_s[n * 21 + 1]);
30
31 PRIM_INT__s_s_h_s[n * 21 + 2] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 0]);
32 PRIM_INT__s_s_h_s[n * 21 + 2] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 0], PRIM_INT__s_s_h_s[n * 21 + 2]);
33
34 PRIM_INT__s_s_h_s[n * 21 + 3] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 1]);
35 PRIM_INT__s_s_h_s[n * 21 + 3] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 1], PRIM_INT__s_s_h_s[n * 21 + 3]);
36 PRIM_INT__s_s_h_s[n * 21 + 3] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 0], PRIM_INT__s_s_f_s[n * 10 + 0]), PRIM_INT__s_s_h_s[n * 21 + 3]);
37
38 PRIM_INT__s_s_h_s[n * 21 + 4] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 1]);
39 PRIM_INT__s_s_h_s[n * 21 + 4] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 1], PRIM_INT__s_s_h_s[n * 21 + 4]);
40
41 PRIM_INT__s_s_h_s[n * 21 + 5] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 2]);
42 PRIM_INT__s_s_h_s[n * 21 + 5] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 2], PRIM_INT__s_s_h_s[n * 21 + 5]);
43 PRIM_INT__s_s_h_s[n * 21 + 5] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 0], PRIM_INT__s_s_f_s[n * 10 + 0]), PRIM_INT__s_s_h_s[n * 21 + 5]);
44
45 PRIM_INT__s_s_h_s[n * 21 + 6] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_g_s[n * 15 + 6]);
46 PRIM_INT__s_s_h_s[n * 21 + 6] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_g_s[(n+1) * 15 + 6], PRIM_INT__s_s_h_s[n * 21 + 6]);
47 PRIM_INT__s_s_h_s[n * 21 + 6] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 6], PRIM_INT__s_s_f_s[n * 10 + 6]), PRIM_INT__s_s_h_s[n * 21 + 6]);
48
49 PRIM_INT__s_s_h_s[n * 21 + 7] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 3]);
50 PRIM_INT__s_s_h_s[n * 21 + 7] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 3], PRIM_INT__s_s_h_s[n * 21 + 7]);
51
52 PRIM_INT__s_s_h_s[n * 21 + 8] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 5]);
53 PRIM_INT__s_s_h_s[n * 21 + 8] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 5], PRIM_INT__s_s_h_s[n * 21 + 8]);
54
55 PRIM_INT__s_s_h_s[n * 21 + 9] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_g_s[n * 15 + 9]);
56 PRIM_INT__s_s_h_s[n * 21 + 9] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_g_s[(n+1) * 15 + 9], PRIM_INT__s_s_h_s[n * 21 + 9]);
57 PRIM_INT__s_s_h_s[n * 21 + 9] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 9], PRIM_INT__s_s_f_s[n * 10 + 9]), PRIM_INT__s_s_h_s[n * 21 + 9]);
58
59 PRIM_INT__s_s_h_s[n * 21 + 10] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_g_s[n * 15 + 10]);
60 PRIM_INT__s_s_h_s[n * 21 + 10] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_g_s[(n+1) * 15 + 10], PRIM_INT__s_s_h_s[n * 21 + 10]);
61
62 PRIM_INT__s_s_h_s[n * 21 + 11] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 6]);
63 PRIM_INT__s_s_h_s[n * 21 + 11] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 6], PRIM_INT__s_s_h_s[n * 21 + 11]);
64
65 PRIM_INT__s_s_h_s[n * 21 + 12] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_g_s[n * 15 + 12]);
66 PRIM_INT__s_s_h_s[n * 21 + 12] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_g_s[(n+1) * 15 + 12], PRIM_INT__s_s_h_s[n * 21 + 12]);
67
68 PRIM_INT__s_s_h_s[n * 21 + 13] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 9]);
69 PRIM_INT__s_s_h_s[n * 21 + 13] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 9], PRIM_INT__s_s_h_s[n * 21 + 13]);
70
71 PRIM_INT__s_s_h_s[n * 21 + 14] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_g_s[n * 15 + 14]);
72 PRIM_INT__s_s_h_s[n * 21 + 14] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_g_s[(n+1) * 15 + 14], PRIM_INT__s_s_h_s[n * 21 + 14]);
73
74 PRIM_INT__s_s_h_s[n * 21 + 15] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 10]);
75 PRIM_INT__s_s_h_s[n * 21 + 15] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 10], PRIM_INT__s_s_h_s[n * 21 + 15]);
76 PRIM_INT__s_s_h_s[n * 21 + 15] = SIMINT_FMADD( vrr_const_4_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 6], PRIM_INT__s_s_f_s[n * 10 + 6]), PRIM_INT__s_s_h_s[n * 21 + 15]);
77
78 PRIM_INT__s_s_h_s[n * 21 + 16] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 10]);
79 PRIM_INT__s_s_h_s[n * 21 + 16] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 10], PRIM_INT__s_s_h_s[n * 21 + 16]);
80
81 PRIM_INT__s_s_h_s[n * 21 + 17] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 11]);
82 PRIM_INT__s_s_h_s[n * 21 + 17] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 11], PRIM_INT__s_s_h_s[n * 21 + 17]);
83 PRIM_INT__s_s_h_s[n * 21 + 17] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 6], PRIM_INT__s_s_f_s[n * 10 + 6]), PRIM_INT__s_s_h_s[n * 21 + 17]);
84
85 PRIM_INT__s_s_h_s[n * 21 + 18] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 13]);
86 PRIM_INT__s_s_h_s[n * 21 + 18] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 13], PRIM_INT__s_s_h_s[n * 21 + 18]);
87 PRIM_INT__s_s_h_s[n * 21 + 18] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 9], PRIM_INT__s_s_f_s[n * 10 + 9]), PRIM_INT__s_s_h_s[n * 21 + 18]);
88
89 PRIM_INT__s_s_h_s[n * 21 + 19] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_g_s[n * 15 + 14]);
90 PRIM_INT__s_s_h_s[n * 21 + 19] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_g_s[(n+1) * 15 + 14], PRIM_INT__s_s_h_s[n * 21 + 19]);
91
92 PRIM_INT__s_s_h_s[n * 21 + 20] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_g_s[n * 15 + 14]);
93 PRIM_INT__s_s_h_s[n * 21 + 20] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_g_s[(n+1) * 15 + 14], PRIM_INT__s_s_h_s[n * 21 + 20]);
94 PRIM_INT__s_s_h_s[n * 21 + 20] = SIMINT_FMADD( vrr_const_4_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_f_s[(n+1) * 10 + 9], PRIM_INT__s_s_f_s[n * 10 + 9]), PRIM_INT__s_s_h_s[n * 21 + 20]);
95
96 }
97
98 }
99
100
101