Go to the documentation of this file.
11 #define MAC_Apply_G_mx3b_ops( m_A, \
20 float ga12 = *gamma12; \
21 float si12 = *sigma12; \
22 float ga23 = *gamma23; \
23 float si23 = *sigma23; \
24 float* restrict alpha1 = a1; \
25 float* restrict alpha2 = a2; \
26 float* restrict alpha3 = a3; \
32 for ( i = 0; i < m_A; ++i ) \
37 *alpha2 = temp2 * ga23 + temp3 * si23; \
38 *alpha3 = temp3 * ga23 - temp2 * si23; \
43 *alpha1 = temp1 * ga12 + temp2 * si12; \
44 *alpha2 = temp2 * ga12 - temp1 * si12; \
52 #define MAC_Apply_G_mx3b_opc( m_A, \
61 float ga12 = *gamma12; \
62 float si12 = *sigma12; \
63 float ga23 = *gamma23; \
64 float si23 = *sigma23; \
65 scomplex* restrict alpha1 = a1; \
66 scomplex* restrict alpha2 = a2; \
67 scomplex* restrict alpha3 = a3; \
73 for ( i = 0; i < m_A; ++i ) \
78 alpha2->real = ga23 * temp2.real + si23 * temp3.real; \
79 alpha2->imag = ga23 * temp2.imag + si23 * temp3.imag; \
81 alpha3->real = -si23 * temp2.real + ga23 * temp3.real; \
82 alpha3->imag = -si23 * temp2.imag + ga23 * temp3.imag; \
87 alpha1->real = ga12 * temp1.real + si12 * temp2.real; \
88 alpha1->imag = ga12 * temp1.imag + si12 * temp2.imag; \
90 alpha2->real = -si12 * temp1.real + ga12 * temp2.real; \
91 alpha2->imag = -si12 * temp1.imag + ga12 * temp2.imag; \
99 #define MAC_Apply_G_mx3b_opd( m_A, \
108 double ga12 = *gamma12; \
109 double si12 = *sigma12; \
110 double ga23 = *gamma23; \
111 double si23 = *sigma23; \
112 double* restrict alpha1 = a1; \
113 double* restrict alpha2 = a2; \
114 double* restrict alpha3 = a3; \
120 for ( i = 0; i < m_A; ++i ) \
125 *alpha2 = temp2 * ga23 + temp3 * si23; \
126 *alpha3 = temp3 * ga23 - temp2 * si23; \
131 *alpha1 = temp1 * ga12 + temp2 * si12; \
132 *alpha2 = temp2 * ga12 - temp1 * si12; \
140 #define MAC_Apply_G_mx3b_opz( m_A, \
149 double ga12 = *gamma12; \
150 double si12 = *sigma12; \
151 double ga23 = *gamma23; \
152 double si23 = *sigma23; \
153 dcomplex* restrict alpha1 = a1; \
154 dcomplex* restrict alpha2 = a2; \
155 dcomplex* restrict alpha3 = a3; \
161 for ( i = 0; i < m_A; ++i ) \
166 alpha2->real = ga23 * temp2.real + si23 * temp3.real; \
167 alpha2->imag = ga23 * temp2.imag + si23 * temp3.imag; \
169 alpha3->real = -si23 * temp2.real + ga23 * temp3.real; \
170 alpha3->imag = -si23 * temp2.imag + ga23 * temp3.imag; \
175 alpha1->real = ga12 * temp1.real + si12 * temp2.real; \
176 alpha1->imag = ga12 * temp1.imag + si12 * temp2.imag; \
178 alpha2->real = -si12 * temp1.real + ga12 * temp2.real; \
179 alpha2->imag = -si12 * temp1.imag + ga12 * temp2.imag; \