libflame  revision_anchor
Functions
FLA_UDdate_UT_opt_var1.c File Reference

(r)

Functions

FLA_Error FLA_UDdate_UT_opt_var1 (FLA_Obj R, FLA_Obj C, FLA_Obj D, FLA_Obj T)
 
FLA_Error FLA_UDdate_UT_ops_var1 (int mn_RT, int m_C, int m_D, float *buff_R, int rs_R, int cs_R, float *buff_C, int rs_C, int cs_C, float *buff_D, int rs_D, int cs_D, float *buff_T, int rs_T, int cs_T)
 
FLA_Error FLA_UDdate_UT_opd_var1 (int mn_RT, int m_C, int m_D, double *buff_R, int rs_R, int cs_R, double *buff_C, int rs_C, int cs_C, double *buff_D, int rs_D, int cs_D, double *buff_T, int rs_T, int cs_T)
 
FLA_Error FLA_UDdate_UT_opc_var1 (int mn_RT, int m_C, int m_D, scomplex *buff_R, int rs_R, int cs_R, scomplex *buff_C, int rs_C, int cs_C, scomplex *buff_D, int rs_D, int cs_D, scomplex *buff_T, int rs_T, int cs_T)
 
FLA_Error FLA_UDdate_UT_opz_var1 (int mn_RT, int m_C, int m_D, dcomplex *buff_R, int rs_R, int cs_R, dcomplex *buff_C, int rs_C, int cs_C, dcomplex *buff_D, int rs_D, int cs_D, dcomplex *buff_T, int rs_T, int cs_T)
 

Function Documentation

◆ FLA_UDdate_UT_opc_var1()

FLA_Error FLA_UDdate_UT_opc_var1 ( int  mn_RT,
int  m_C,
int  m_D,
scomplex buff_R,
int  rs_R,
int  cs_R,
scomplex buff_C,
int  rs_C,
int  cs_C,
scomplex buff_D,
int  rs_D,
int  cs_D,
scomplex buff_T,
int  rs_T,
int  cs_T 
)

References bl1_cherk(), bl1_cident(), bl1_cscalediag(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, BLIS1_UPPER_TRIANGULAR, FLA_Apply_HUD_UT_l_opc_var1(), FLA_Househ3UD_UT_opc(), FLA_MINUS_ONE, FLA_ONE, FLA_ONE_HALF, and i.

Referenced by FLA_UDdate_UT_opt_var1().

323 {
324  scomplex* buff_half = FLA_COMPLEX_PTR( FLA_ONE_HALF );
325  float* buff_1 = FLA_FLOAT_PTR( FLA_ONE );
326  float* buff_m1 = FLA_FLOAT_PTR( FLA_MINUS_ONE );
327  int i;
328 
329  for ( i = 0; i < mn_RT; ++i )
330  {
331  scomplex* rho11 = buff_R + (i )*cs_R + (i )*rs_R;
332  scomplex* r12t = buff_R + (i+1)*cs_R + (i )*rs_R;
333 
334  scomplex* c1 = buff_C + (i )*cs_C + (0 )*rs_C;
335  scomplex* C2 = buff_C + (i+1)*cs_C + (0 )*rs_C;
336 
337  scomplex* d1 = buff_D + (i )*cs_D + (0 )*rs_D;
338  scomplex* D2 = buff_D + (i+1)*cs_D + (0 )*rs_D;
339 
340  scomplex* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
341  scomplex* w12t = buff_T + (i+1)*cs_T + (i )*rs_T;
342 
343  int mn_ahead = mn_RT - i - 1;
344 
345  //------------------------------------------------------------//
346 
347  // FLA_Househ3UD_UT( rho11,
348  // c1,
349  // d1, tau11 );
351  m_D,
352  rho11,
353  c1, rs_C,
354  d1, rs_D,
355  tau11 );
356 
357  // FLA_Apply_HUD_UT( FLA_LEFT,
358  // tau11, r12t,
359  // c1, C2,
360  // d1, D2 );
362  m_D,
363  mn_ahead,
364  tau11,
365  w12t, cs_T,
366  r12t, cs_R,
367  c1, rs_C,
368  C2, rs_C, cs_C,
369  d1, rs_D,
370  D2, rs_D, cs_D );
371 
372  //------------------------------------------------------------//
373 
374  }
375 
376  // FLA_Set_to_identity( T );
377  bl1_cident( mn_RT, buff_T, rs_T, cs_T );
378 
379  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
380  // FLA_ONE, C, FLA_ONE, T );
383  mn_RT,
384  m_C,
385  buff_1,
386  buff_C, rs_C, cs_C,
387  buff_1,
388  buff_T, rs_T, cs_T );
389 
390  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
391  // FLA_MINUS_ONE, D, FLA_ONE, T );
394  mn_RT,
395  m_D,
396  buff_m1,
397  buff_D, rs_D, cs_D,
398  buff_1,
399  buff_T, rs_T, cs_T );
400 
401  // FLA_Scale_diag( FLA_NO_CONJUGATE, FLA_ONE_HALF, T );
403  0,
404  mn_RT,
405  mn_RT,
406  buff_half,
407  buff_T, rs_T, cs_T );
408 
409  return FLA_SUCCESS;
410 }
FLA_Obj FLA_MINUS_ONE
Definition: FLA_Init.c:22
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Obj FLA_ONE_HALF
Definition: FLA_Init.c:19
void bl1_cident(int m, scomplex *a, int a_rs, int a_cs)
Definition: bl1_ident.c:51
void bl1_cherk(uplo1_t uplo, trans1_t trans, int m, int k, float *alpha, scomplex *a, int a_rs, int a_cs, float *beta, scomplex *c, int c_rs, int c_cs)
Definition: bl1_herk.c:36
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
Definition: blis_type_defs.h:132
int i
Definition: bl1_axmyv2.c:145
void bl1_cscalediag(conj1_t conj, int offset, int m, int n, scomplex *sigma, scomplex *a, int a_rs, int a_cs)
Definition: bl1_scalediag.c:99
FLA_Error FLA_Househ3UD_UT_opc(int m_x2, int m_y2, scomplex *chi_1, scomplex *x2, int inc_x2, scomplex *y2, int inc_y2, scomplex *tau)
Definition: FLA_Househ3UD_UT.c:393
FLA_Error FLA_Apply_HUD_UT_l_opc_var1(int m_u1_C2, int m_v1_D2, int n_r12t, scomplex *tau, scomplex *w12t, int inc_w12t, scomplex *r12t, int inc_r12t, scomplex *u1, int inc_u1, scomplex *C2, int rs_C2, int cs_C2, scomplex *v1, int inc_v1, scomplex *D2, int rs_D2, int cs_D2)
Definition: FLA_Apply_HUD_UT_l_opt_var1.c:329
Definition: blis_type_defs.h:63

◆ FLA_UDdate_UT_opd_var1()

FLA_Error FLA_UDdate_UT_opd_var1 ( int  mn_RT,
int  m_C,
int  m_D,
double *  buff_R,
int  rs_R,
int  cs_R,
double *  buff_C,
int  rs_C,
int  cs_C,
double *  buff_D,
int  rs_D,
int  cs_D,
double *  buff_T,
int  rs_T,
int  cs_T 
)

References bl1_dident(), bl1_dscalediag(), bl1_dsyrk(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, BLIS1_UPPER_TRIANGULAR, FLA_Apply_HUD_UT_l_opd_var1(), FLA_Househ3UD_UT_opd(), FLA_MINUS_ONE, FLA_ONE, FLA_ONE_HALF, and i.

Referenced by FLA_UDdate_UT_opt_var1().

225 {
226  double* buff_half = FLA_DOUBLE_PTR( FLA_ONE_HALF );
227  double* buff_1 = FLA_DOUBLE_PTR( FLA_ONE );
228  double* buff_m1 = FLA_DOUBLE_PTR( FLA_MINUS_ONE );
229  int i;
230 
231  for ( i = 0; i < mn_RT; ++i )
232  {
233  double* rho11 = buff_R + (i )*cs_R + (i )*rs_R;
234  double* r12t = buff_R + (i+1)*cs_R + (i )*rs_R;
235 
236  double* c1 = buff_C + (i )*cs_C + (0 )*rs_C;
237  double* C2 = buff_C + (i+1)*cs_C + (0 )*rs_C;
238 
239  double* d1 = buff_D + (i )*cs_D + (0 )*rs_D;
240  double* D2 = buff_D + (i+1)*cs_D + (0 )*rs_D;
241 
242  double* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
243  double* w12t = buff_T + (i+1)*cs_T + (i )*rs_T;
244 
245  int mn_ahead = mn_RT - i - 1;
246 
247  //------------------------------------------------------------//
248 
249  // FLA_Househ3UD_UT( rho11,
250  // c1,
251  // d1, tau11 );
253  m_D,
254  rho11,
255  c1, rs_C,
256  d1, rs_D,
257  tau11 );
258 
259  // FLA_Apply_HUD_UT( FLA_LEFT,
260  // tau11, r12t,
261  // c1, C2,
262  // d1, D2 );
264  m_D,
265  mn_ahead,
266  tau11,
267  w12t, cs_T,
268  r12t, cs_R,
269  c1, rs_C,
270  C2, rs_C, cs_C,
271  d1, rs_D,
272  D2, rs_D, cs_D );
273 
274  //------------------------------------------------------------//
275 
276  }
277 
278  // FLA_Set_to_identity( T );
279  bl1_dident( mn_RT, buff_T, rs_T, cs_T );
280 
281  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
282  // FLA_ONE, C, FLA_ONE, T );
285  mn_RT,
286  m_C,
287  buff_1,
288  buff_C, rs_C, cs_C,
289  buff_1,
290  buff_T, rs_T, cs_T );
291 
292  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
293  // FLA_MINUS_ONE, D, FLA_ONE, T );
296  mn_RT,
297  m_D,
298  buff_m1,
299  buff_D, rs_D, cs_D,
300  buff_1,
301  buff_T, rs_T, cs_T );
302 
303  // FLA_Scale_diag( FLA_NO_CONJUGATE, FLA_ONE_HALF, T );
305  0,
306  mn_RT,
307  mn_RT,
308  buff_half,
309  buff_T, rs_T, cs_T );
310 
311  return FLA_SUCCESS;
312 }
void bl1_dsyrk(uplo1_t uplo, trans1_t trans, int m, int k, double *alpha, double *a, int a_rs, int a_cs, double *beta, double *c, int c_rs, int c_cs)
Definition: bl1_syrk.c:109
void bl1_dident(int m, double *a, int a_rs, int a_cs)
Definition: bl1_ident.c:32
FLA_Obj FLA_MINUS_ONE
Definition: FLA_Init.c:22
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Obj FLA_ONE_HALF
Definition: FLA_Init.c:19
void bl1_dscalediag(conj1_t conj, int offset, int m, int n, double *sigma, double *a, int a_rs, int a_cs)
Definition: bl1_scalediag.c:34
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
FLA_Error FLA_Apply_HUD_UT_l_opd_var1(int m_u1_C2, int m_v1_D2, int n_r12t, double *tau, double *w12t, int inc_w12t, double *r12t, int inc_r12t, double *u1, int inc_u1, double *C2, int rs_C2, int cs_C2, double *v1, int inc_v1, double *D2, int rs_D2, int cs_D2)
Definition: FLA_Apply_HUD_UT_l_opt_var1.c:237
FLA_Error FLA_Househ3UD_UT_opd(int m_x2, int m_y2, double *chi_1, double *x2, int inc_x2, double *y2, int inc_y2, double *tau)
Definition: FLA_Househ3UD_UT.c:267
int i
Definition: bl1_axmyv2.c:145
Definition: blis_type_defs.h:63

◆ FLA_UDdate_UT_ops_var1()

FLA_Error FLA_UDdate_UT_ops_var1 ( int  mn_RT,
int  m_C,
int  m_D,
float *  buff_R,
int  rs_R,
int  cs_R,
float *  buff_C,
int  rs_C,
int  cs_C,
float *  buff_D,
int  rs_D,
int  cs_D,
float *  buff_T,
int  rs_T,
int  cs_T 
)

References bl1_sident(), bl1_sscalediag(), bl1_ssyrk(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, BLIS1_UPPER_TRIANGULAR, FLA_Apply_HUD_UT_l_ops_var1(), FLA_Househ3UD_UT_ops(), FLA_MINUS_ONE, FLA_ONE, FLA_ONE_HALF, and i.

Referenced by FLA_UDdate_UT_opt_var1().

127 {
128  float* buff_half = FLA_FLOAT_PTR( FLA_ONE_HALF );
129  float* buff_1 = FLA_FLOAT_PTR( FLA_ONE );
130  float* buff_m1 = FLA_FLOAT_PTR( FLA_MINUS_ONE );
131  int i;
132 
133  for ( i = 0; i < mn_RT; ++i )
134  {
135  float* rho11 = buff_R + (i )*cs_R + (i )*rs_R;
136  float* r12t = buff_R + (i+1)*cs_R + (i )*rs_R;
137 
138  float* c1 = buff_C + (i )*cs_C + (0 )*rs_C;
139  float* C2 = buff_C + (i+1)*cs_C + (0 )*rs_C;
140 
141  float* d1 = buff_D + (i )*cs_D + (0 )*rs_D;
142  float* D2 = buff_D + (i+1)*cs_D + (0 )*rs_D;
143 
144  float* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
145  float* w12t = buff_T + (i+1)*cs_T + (i )*rs_T;
146 
147  int mn_ahead = mn_RT - i - 1;
148 
149  //------------------------------------------------------------//
150 
151  // FLA_Househ3UD_UT( rho11,
152  // c1,
153  // d1, tau11 );
155  m_D,
156  rho11,
157  c1, rs_C,
158  d1, rs_D,
159  tau11 );
160 
161  // FLA_Apply_HUD_UT( FLA_LEFT,
162  // tau11, r12t,
163  // c1, C2,
164  // d1, D2 );
166  m_D,
167  mn_ahead,
168  tau11,
169  w12t, cs_T,
170  r12t, cs_R,
171  c1, rs_C,
172  C2, rs_C, cs_C,
173  d1, rs_D,
174  D2, rs_D, cs_D );
175 
176  //------------------------------------------------------------//
177 
178  }
179 
180  // FLA_Set_to_identity( T );
181  bl1_sident( mn_RT, buff_T, rs_T, cs_T );
182 
183  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
184  // FLA_ONE, C, FLA_ONE, T );
187  mn_RT,
188  m_C,
189  buff_1,
190  buff_C, rs_C, cs_C,
191  buff_1,
192  buff_T, rs_T, cs_T );
193 
194  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
195  // FLA_MINUS_ONE, D, FLA_ONE, T );
198  mn_RT,
199  m_D,
200  buff_m1,
201  buff_D, rs_D, cs_D,
202  buff_1,
203  buff_T, rs_T, cs_T );
204 
205  // FLA_Scale_diag( FLA_NO_CONJUGATE, FLA_ONE_HALF, T );
207  0,
208  mn_RT,
209  mn_RT,
210  buff_half,
211  buff_T, rs_T, cs_T );
212 
213  return FLA_SUCCESS;
214 }
FLA_Obj FLA_MINUS_ONE
Definition: FLA_Init.c:22
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Obj FLA_ONE_HALF
Definition: FLA_Init.c:19
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
void bl1_sscalediag(conj1_t conj, int offset, int m, int n, float *sigma, float *a, int a_rs, int a_cs)
Definition: bl1_scalediag.c:13
void bl1_ssyrk(uplo1_t uplo, trans1_t trans, int m, int k, float *alpha, float *a, int a_rs, int a_cs, float *beta, float *c, int c_rs, int c_cs)
Definition: bl1_syrk.c:13
FLA_Error FLA_Apply_HUD_UT_l_ops_var1(int m_u1_C2, int m_v1_D2, int n_r12t, float *tau, float *w12t, int inc_w12t, float *r12t, int inc_r12t, float *u1, int inc_u1, float *C2, int rs_C2, int cs_C2, float *v1, int inc_v1, float *D2, int rs_D2, int cs_D2)
Definition: FLA_Apply_HUD_UT_l_opt_var1.c:145
void bl1_sident(int m, float *a, int a_rs, int a_cs)
Definition: bl1_ident.c:13
int i
Definition: bl1_axmyv2.c:145
FLA_Error FLA_Househ3UD_UT_ops(int m_x2, int m_y2, float *chi_1, float *x2, int inc_x2, float *y2, int inc_y2, float *tau)
Definition: FLA_Househ3UD_UT.c:140
Definition: blis_type_defs.h:63

◆ FLA_UDdate_UT_opt_var1()

FLA_Error FLA_UDdate_UT_opt_var1 ( FLA_Obj  R,
FLA_Obj  C,
FLA_Obj  D,
FLA_Obj  T 
)

References FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_length(), FLA_Obj_row_stride(), FLA_UDdate_UT_opc_var1(), FLA_UDdate_UT_opd_var1(), FLA_UDdate_UT_ops_var1(), and FLA_UDdate_UT_opz_var1().

Referenced by FLA_UDdate_UT_internal().

16 {
17  FLA_Datatype datatype;
18  int mn_RT, m_C, m_D;
19  int rs_R, cs_R;
20  int rs_C, cs_C;
21  int rs_D, cs_D;
22  int rs_T, cs_T;
23 
24  datatype = FLA_Obj_datatype( R );
25 
26  mn_RT = FLA_Obj_length( R );
27  m_C = FLA_Obj_length( C );
28  m_D = FLA_Obj_length( D );
29 
30  rs_R = FLA_Obj_row_stride( R );
31  cs_R = FLA_Obj_col_stride( R );
32  rs_C = FLA_Obj_row_stride( C );
33  cs_C = FLA_Obj_col_stride( C );
34  rs_D = FLA_Obj_row_stride( D );
35  cs_D = FLA_Obj_col_stride( D );
36  rs_T = FLA_Obj_row_stride( T );
37  cs_T = FLA_Obj_col_stride( T );
38 
39 
40  switch ( datatype )
41  {
42  case FLA_FLOAT:
43  {
44  float* buff_R = FLA_FLOAT_PTR( R );
45  float* buff_C = FLA_FLOAT_PTR( C );
46  float* buff_D = FLA_FLOAT_PTR( D );
47  float* buff_T = FLA_FLOAT_PTR( T );
48 
50  m_C,
51  m_D,
52  buff_R, rs_R, cs_R,
53  buff_C, rs_C, cs_C,
54  buff_D, rs_D, cs_D,
55  buff_T, rs_T, cs_T );
56 
57  break;
58  }
59 
60  case FLA_DOUBLE:
61  {
62  double* buff_R = FLA_DOUBLE_PTR( R );
63  double* buff_C = FLA_DOUBLE_PTR( C );
64  double* buff_D = FLA_DOUBLE_PTR( D );
65  double* buff_T = FLA_DOUBLE_PTR( T );
66 
68  m_C,
69  m_D,
70  buff_R, rs_R, cs_R,
71  buff_C, rs_C, cs_C,
72  buff_D, rs_D, cs_D,
73  buff_T, rs_T, cs_T );
74 
75  break;
76  }
77 
78  case FLA_COMPLEX:
79  {
80  scomplex* buff_R = FLA_COMPLEX_PTR( R );
81  scomplex* buff_C = FLA_COMPLEX_PTR( C );
82  scomplex* buff_D = FLA_COMPLEX_PTR( D );
83  scomplex* buff_T = FLA_COMPLEX_PTR( T );
84 
86  m_C,
87  m_D,
88  buff_R, rs_R, cs_R,
89  buff_C, rs_C, cs_C,
90  buff_D, rs_D, cs_D,
91  buff_T, rs_T, cs_T );
92 
93  break;
94  }
95 
96  case FLA_DOUBLE_COMPLEX:
97  {
98  dcomplex* buff_R = FLA_DOUBLE_COMPLEX_PTR( R );
99  dcomplex* buff_C = FLA_DOUBLE_COMPLEX_PTR( C );
100  dcomplex* buff_D = FLA_DOUBLE_COMPLEX_PTR( D );
101  dcomplex* buff_T = FLA_DOUBLE_COMPLEX_PTR( T );
102 
103  FLA_UDdate_UT_opz_var1( mn_RT,
104  m_C,
105  m_D,
106  buff_R, rs_R, cs_R,
107  buff_C, rs_C, cs_C,
108  buff_D, rs_D, cs_D,
109  buff_T, rs_T, cs_T );
110 
111  break;
112  }
113  }
114 
115  return FLA_SUCCESS;
116 }
FLA_Error FLA_UDdate_UT_ops_var1(int mn_RT, int m_C, int m_D, float *buff_R, int rs_R, int cs_R, float *buff_C, int rs_C, int cs_C, float *buff_D, int rs_D, int cs_D, float *buff_T, int rs_T, int cs_T)
Definition: FLA_UDdate_UT_opt_var1.c:120
FLA_Error FLA_UDdate_UT_opz_var1(int mn_RT, int m_C, int m_D, dcomplex *buff_R, int rs_R, int cs_R, dcomplex *buff_C, int rs_C, int cs_C, dcomplex *buff_D, int rs_D, int cs_D, dcomplex *buff_T, int rs_T, int cs_T)
Definition: FLA_UDdate_UT_opt_var1.c:414
dim_t FLA_Obj_row_stride(FLA_Obj obj)
Definition: FLA_Query.c:167
FLA_Datatype FLA_Obj_datatype(FLA_Obj obj)
Definition: FLA_Query.c:13
FLA_Error FLA_UDdate_UT_opd_var1(int mn_RT, int m_C, int m_D, double *buff_R, int rs_R, int cs_R, double *buff_C, int rs_C, int cs_C, double *buff_D, int rs_D, int cs_D, double *buff_T, int rs_T, int cs_T)
Definition: FLA_UDdate_UT_opt_var1.c:218
Definition: blis_type_defs.h:132
int FLA_Datatype
Definition: FLA_type_defs.h:49
dim_t FLA_Obj_col_stride(FLA_Obj obj)
Definition: FLA_Query.c:174
dim_t FLA_Obj_length(FLA_Obj obj)
Definition: FLA_Query.c:116
FLA_Error FLA_UDdate_UT_opc_var1(int mn_RT, int m_C, int m_D, scomplex *buff_R, int rs_R, int cs_R, scomplex *buff_C, int rs_C, int cs_C, scomplex *buff_D, int rs_D, int cs_D, scomplex *buff_T, int rs_T, int cs_T)
Definition: FLA_UDdate_UT_opt_var1.c:316
Definition: blis_type_defs.h:137

◆ FLA_UDdate_UT_opz_var1()

FLA_Error FLA_UDdate_UT_opz_var1 ( int  mn_RT,
int  m_C,
int  m_D,
dcomplex buff_R,
int  rs_R,
int  cs_R,
dcomplex buff_C,
int  rs_C,
int  cs_C,
dcomplex buff_D,
int  rs_D,
int  cs_D,
dcomplex buff_T,
int  rs_T,
int  cs_T 
)

References bl1_zherk(), bl1_zident(), bl1_zscalediag(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, BLIS1_UPPER_TRIANGULAR, FLA_Apply_HUD_UT_l_opz_var1(), FLA_Househ3UD_UT_opz(), FLA_MINUS_ONE, FLA_ONE, FLA_ONE_HALF, and i.

Referenced by FLA_UDdate_UT_opt_var1().

421 {
422  dcomplex* buff_half = FLA_DOUBLE_COMPLEX_PTR( FLA_ONE_HALF );
423  double* buff_1 = FLA_DOUBLE_PTR( FLA_ONE );
424  double* buff_m1 = FLA_DOUBLE_PTR( FLA_MINUS_ONE );
425  int i;
426 
427  for ( i = 0; i < mn_RT; ++i )
428  {
429  dcomplex* rho11 = buff_R + (i )*cs_R + (i )*rs_R;
430  dcomplex* r12t = buff_R + (i+1)*cs_R + (i )*rs_R;
431 
432  dcomplex* c1 = buff_C + (i )*cs_C + (0 )*rs_C;
433  dcomplex* C2 = buff_C + (i+1)*cs_C + (0 )*rs_C;
434 
435  dcomplex* d1 = buff_D + (i )*cs_D + (0 )*rs_D;
436  dcomplex* D2 = buff_D + (i+1)*cs_D + (0 )*rs_D;
437 
438  dcomplex* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
439  dcomplex* w12t = buff_T + (i+1)*cs_T + (i )*rs_T;
440 
441  int mn_ahead = mn_RT - i - 1;
442 
443  //------------------------------------------------------------//
444 
445  // FLA_Househ3UD_UT( rho11,
446  // c1,
447  // d1, tau11 );
449  m_D,
450  rho11,
451  c1, rs_C,
452  d1, rs_D,
453  tau11 );
454 
455  // FLA_Apply_HUD_UT( FLA_LEFT,
456  // tau11, r12t,
457  // c1, C2,
458  // d1, D2 );
460  m_D,
461  mn_ahead,
462  tau11,
463  w12t, cs_T,
464  r12t, cs_R,
465  c1, rs_C,
466  C2, rs_C, cs_C,
467  d1, rs_D,
468  D2, rs_D, cs_D );
469 
470  //------------------------------------------------------------//
471 
472  }
473 
474  // FLA_Set_to_identity( T );
475  bl1_zident( mn_RT, buff_T, rs_T, cs_T );
476 
477  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
478  // FLA_ONE, C, FLA_ONE, T );
481  mn_RT,
482  m_C,
483  buff_1,
484  buff_C, rs_C, cs_C,
485  buff_1,
486  buff_T, rs_T, cs_T );
487 
488  // FLA_Herk( FLA_UPPER_TRIANGULAR, FLA_CONJ_TRANSPOSE,
489  // FLA_MINUS_ONE, D, FLA_ONE, T );
492  mn_RT,
493  m_D,
494  buff_m1,
495  buff_D, rs_D, cs_D,
496  buff_1,
497  buff_T, rs_T, cs_T );
498 
499  // FLA_Scale_diag( FLA_NO_CONJUGATE, FLA_ONE_HALF, T );
501  0,
502  mn_RT,
503  mn_RT,
504  buff_half,
505  buff_T, rs_T, cs_T );
506 
507  return FLA_SUCCESS;
508 }
FLA_Obj FLA_MINUS_ONE
Definition: FLA_Init.c:22
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Obj FLA_ONE_HALF
Definition: FLA_Init.c:19
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
FLA_Error FLA_Househ3UD_UT_opz(int m_x2, int m_y2, dcomplex *chi_1, dcomplex *x2, int inc_x2, dcomplex *y2, int inc_y2, dcomplex *tau)
Definition: FLA_Househ3UD_UT.c:527
void bl1_zscalediag(conj1_t conj, int offset, int m, int n, dcomplex *sigma, dcomplex *a, int a_rs, int a_cs)
Definition: bl1_scalediag.c:123
FLA_Error FLA_Apply_HUD_UT_l_opz_var1(int m_u1_C2, int m_v1_D2, int n_r12t, dcomplex *tau, dcomplex *w12t, int inc_w12t, dcomplex *r12t, int inc_r12t, dcomplex *u1, int inc_u1, dcomplex *C2, int rs_C2, int cs_C2, dcomplex *v1, int inc_v1, dcomplex *D2, int rs_D2, int cs_D2)
Definition: FLA_Apply_HUD_UT_l_opt_var1.c:421
void bl1_zherk(uplo1_t uplo, trans1_t trans, int m, int k, double *alpha, dcomplex *a, int a_rs, int a_cs, double *beta, dcomplex *c, int c_rs, int c_cs)
Definition: bl1_herk.c:184
int i
Definition: bl1_axmyv2.c:145
Definition: blis_type_defs.h:63
Definition: blis_type_defs.h:137
void bl1_zident(int m, dcomplex *a, int a_rs, int a_cs)
Definition: bl1_ident.c:71