libflame  revision_anchor
Functions
FLA_Hess_UT_opt_var1.c File Reference

(r)

Functions

FLA_Error FLA_Hess_UT_opt_var1 (FLA_Obj A, FLA_Obj T)
 
FLA_Error FLA_Hess_UT_step_opt_var1 (FLA_Obj A, FLA_Obj T)
 
FLA_Error FLA_Hess_UT_step_ops_var1 (int m_A, int m_T, float *buff_A, int rs_A, int cs_A, float *buff_T, int rs_T, int cs_T)
 
FLA_Error FLA_Hess_UT_step_opd_var1 (int m_A, int m_T, double *buff_A, int rs_A, int cs_A, double *buff_T, int rs_T, int cs_T)
 
FLA_Error FLA_Hess_UT_step_opc_var1 (int m_A, int m_T, scomplex *buff_A, int rs_A, int cs_A, scomplex *buff_T, int rs_T, int cs_T)
 
FLA_Error FLA_Hess_UT_step_opz_var1 (int m_A, int m_T, dcomplex *buff_A, int rs_A, int cs_A, dcomplex *buff_T, int rs_T, int cs_T)
 

Function Documentation

◆ FLA_Hess_UT_opt_var1()

FLA_Error FLA_Hess_UT_opt_var1 ( FLA_Obj  A,
FLA_Obj  T 
)

References FLA_Hess_UT_step_opt_var1().

Referenced by FLA_Hess_UT_internal().

14 {
15  return FLA_Hess_UT_step_opt_var1( A, T );
16 }
FLA_Error FLA_Hess_UT_step_opt_var1(FLA_Obj A, FLA_Obj T)
Definition: FLA_Hess_UT_opt_var1.c:18

◆ FLA_Hess_UT_step_opc_var1()

FLA_Error FLA_Hess_UT_step_opc_var1 ( int  m_A,
int  m_T,
scomplex buff_A,
int  rs_A,
int  cs_A,
scomplex buff_T,
int  rs_T,
int  cs_T 
)

References bl1_cgemv(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, FLA_Apply_H2_UT_l_opc_var1(), FLA_Apply_H2_UT_r_opc_var1(), FLA_Househ2_UT_l_opc(), FLA_ONE, FLA_ZERO, and i.

Referenced by FLA_Hess_UT_step_opt_var1().

287 {
288  scomplex* buff_1 = FLA_COMPLEX_PTR( FLA_ONE );
289  scomplex* buff_0 = FLA_COMPLEX_PTR( FLA_ZERO );
290 
291  scomplex first_elem;
292  int i;
293 
294  // b_alg = FLA_Obj_length( T );
295  int b_alg = m_T;
296 
297  for ( i = 0; i < b_alg; ++i )
298  {
299  scomplex* A20 = buff_A + (0 )*cs_A + (i+1)*rs_A;
300  scomplex* a21 = buff_A + (i )*cs_A + (i+1)*rs_A;
301 
302  scomplex* a21_t = buff_A + (i )*cs_A + (i+1)*rs_A;
303  scomplex* a21_b = buff_A + (i )*cs_A + (i+2)*rs_A;
304 
305  scomplex* A22_t = buff_A + (i+1)*cs_A + (i+1)*rs_A;
306  scomplex* A22_b = buff_A + (i+1)*cs_A + (i+2)*rs_A;
307 
308  scomplex* A2_l = buff_A + (i+1)*cs_A + (0 )*rs_A;
309  scomplex* A2_r = buff_A + (i+2)*cs_A + (0 )*rs_A;
310 
311  scomplex* t01 = buff_T + (i )*cs_T + (0 )*rs_T;
312  scomplex* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
313 
314  int m_ahead = m_A - i - 1;
315  int n_ahead = m_A - i - 1;
316  int n_behind = i;
317 
318  /*------------------------------------------------------------*/
319 
320  if ( m_ahead > 0 )
321  {
322  // FLA_Househ2_UT( FLA_LEFT,
323  // a21_t,
324  // a21_b, tau11 );
325  FLA_Househ2_UT_l_opc( m_ahead - 1,
326  a21_t,
327  a21_b, rs_A,
328  tau11 );
329 
330  // FLA_Copy( a21_t, first_elem );
331  // FLA_Set( FLA_ONE, a21_t );
332  first_elem = *a21_t;
333  *a21_t = *buff_1;
334 
335  // FLA_Apply_H2_UT( FLA_LEFT, tau11, a21_b, A22_t,
336  // A22_b );
337  FLA_Apply_H2_UT_l_opc_var1( m_ahead - 1,
338  n_ahead,
339  tau11,
340  a21_b, rs_A,
341  A22_t, cs_A,
342  A22_b, rs_A, cs_A );
343 
344  // FLA_Apply_H2_UT( FLA_RIGHT, tau11, a21_b, A2_l, A2_r );
346  n_ahead - 1,
347  tau11,
348  a21_b, rs_A,
349  A2_l, rs_A,
350  A2_r, rs_A, cs_A );
351 
352  // FLA_Gemv( FLA_CONJ_TRANSPOSE, FLA_ONE, A20, a21, FLA_ZERO, t01 );
355  m_ahead,
356  n_behind,
357  buff_1,
358  A20, rs_A, cs_A,
359  a21, rs_A,
360  buff_0,
361  t01, rs_T );
362 
363  // FLA_Copy( first_elem, a21_t );
364  *a21_t = first_elem;
365  }
366 
367  /*------------------------------------------------------------*/
368 
369  }
370 
371  return FLA_SUCCESS;
372 }
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
Definition: blis_type_defs.h:132
FLA_Error FLA_Apply_H2_UT_l_opc_var1(int m_u2_A2, int n_a1t, scomplex *tau, scomplex *u2, int inc_u2, scomplex *a1t, int inc_a1t, scomplex *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_l_opt_var1.c:269
FLA_Error FLA_Househ2_UT_l_opc(int m_x2, scomplex *chi_1, scomplex *x2, int inc_x2, scomplex *tau)
Definition: FLA_Househ2_UT.c:390
void bl1_cgemv(trans1_t transa, conj1_t conjx, int m, int n, scomplex *alpha, scomplex *a, int a_rs, int a_cs, scomplex *x, int incx, scomplex *beta, scomplex *y, int incy)
Definition: bl1_gemv.c:125
int i
Definition: bl1_axmyv2.c:145
FLA_Error FLA_Apply_H2_UT_r_opc_var1(int n_u2h_A2, int m_a1, scomplex *tau, scomplex *u2h, int inc_u2h, scomplex *a1, int inc_a1, scomplex *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_r_opt_var1.c:254
FLA_Obj FLA_ZERO
Definition: FLA_Init.c:20

◆ FLA_Hess_UT_step_opd_var1()

FLA_Error FLA_Hess_UT_step_opd_var1 ( int  m_A,
int  m_T,
double *  buff_A,
int  rs_A,
int  cs_A,
double *  buff_T,
int  rs_T,
int  cs_T 
)

References bl1_dgemv(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, FLA_Apply_H2_UT_l_opd_var1(), FLA_Apply_H2_UT_r_opd_var1(), FLA_Househ2_UT_l_opd(), FLA_ONE, FLA_ZERO, and i.

Referenced by FLA_Hess_UT_step_opt_var1().

194 {
195  double* buff_1 = FLA_DOUBLE_PTR( FLA_ONE );
196  double* buff_0 = FLA_DOUBLE_PTR( FLA_ZERO );
197 
198  double first_elem;
199  int i;
200 
201  // b_alg = FLA_Obj_length( T );
202  int b_alg = m_T;
203 
204  for ( i = 0; i < b_alg; ++i )
205  {
206  double* A20 = buff_A + (0 )*cs_A + (i+1)*rs_A;
207  double* a21 = buff_A + (i )*cs_A + (i+1)*rs_A;
208 
209  double* a21_t = buff_A + (i )*cs_A + (i+1)*rs_A;
210  double* a21_b = buff_A + (i )*cs_A + (i+2)*rs_A;
211 
212  double* A22_t = buff_A + (i+1)*cs_A + (i+1)*rs_A;
213  double* A22_b = buff_A + (i+1)*cs_A + (i+2)*rs_A;
214 
215  double* A2_l = buff_A + (i+1)*cs_A + (0 )*rs_A;
216  double* A2_r = buff_A + (i+2)*cs_A + (0 )*rs_A;
217 
218  double* t01 = buff_T + (i )*cs_T + (0 )*rs_T;
219  double* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
220 
221  int m_ahead = m_A - i - 1;
222  int n_ahead = m_A - i - 1;
223  int n_behind = i;
224 
225  /*------------------------------------------------------------*/
226 
227  if ( m_ahead > 0 )
228  {
229  // FLA_Househ2_UT( FLA_LEFT,
230  // a21_t,
231  // a21_b, tau11 );
232  FLA_Househ2_UT_l_opd( m_ahead - 1,
233  a21_t,
234  a21_b, rs_A,
235  tau11 );
236 
237  // FLA_Copy( a21_t, first_elem );
238  // FLA_Set( FLA_ONE, a21_t );
239  first_elem = *a21_t;
240  *a21_t = *buff_1;
241 
242  // FLA_Apply_H2_UT( FLA_LEFT, tau11, a21_b, A22_t,
243  // A22_b );
244  FLA_Apply_H2_UT_l_opd_var1( m_ahead - 1,
245  n_ahead,
246  tau11,
247  a21_b, rs_A,
248  A22_t, cs_A,
249  A22_b, rs_A, cs_A );
250 
251  // FLA_Apply_H2_UT( FLA_RIGHT, tau11, a21_b, A2_l, A2_r );
253  n_ahead - 1,
254  tau11,
255  a21_b, rs_A,
256  A2_l, rs_A,
257  A2_r, rs_A, cs_A );
258 
259  // FLA_Gemv( FLA_CONJ_TRANSPOSE, FLA_ONE, A20, a21, FLA_ZERO, t01 );
262  m_ahead,
263  n_behind,
264  buff_1,
265  A20, rs_A, cs_A,
266  a21, rs_A,
267  buff_0,
268  t01, rs_T );
269 
270  // FLA_Copy( first_elem, a21_t );
271  *a21_t = first_elem;
272  }
273 
274  /*------------------------------------------------------------*/
275 
276  }
277 
278  return FLA_SUCCESS;
279 }
void bl1_dgemv(trans1_t transa, conj1_t conjx, int m, int n, double *alpha, double *a, int a_rs, int a_cs, double *x, int incx, double *beta, double *y, int incy)
Definition: bl1_gemv.c:69
FLA_Error FLA_Househ2_UT_l_opd(int m_x2, double *chi_1, double *x2, int inc_x2, double *tau)
Definition: FLA_Househ2_UT.c:274
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Error FLA_Apply_H2_UT_l_opd_var1(int m_u2_A2, int n_a1t, double *tau, double *u2, int inc_u2, double *a1t, int inc_a1t, double *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_l_opt_var1.c:195
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
int i
Definition: bl1_axmyv2.c:145
FLA_Error FLA_Apply_H2_UT_r_opd_var1(int n_u2h_A2, int m_a1, double *tau, double *u2h, int inc_u2h, double *a1, int inc_a1, double *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_r_opt_var1.c:181
FLA_Obj FLA_ZERO
Definition: FLA_Init.c:20

◆ FLA_Hess_UT_step_ops_var1()

FLA_Error FLA_Hess_UT_step_ops_var1 ( int  m_A,
int  m_T,
float *  buff_A,
int  rs_A,
int  cs_A,
float *  buff_T,
int  rs_T,
int  cs_T 
)

References bl1_sgemv(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, FLA_Apply_H2_UT_l_ops_var1(), FLA_Apply_H2_UT_r_ops_var1(), FLA_Househ2_UT_l_ops(), FLA_ONE, FLA_ZERO, and i.

Referenced by FLA_Hess_UT_step_opt_var1().

101 {
102  float* buff_1 = FLA_FLOAT_PTR( FLA_ONE );
103  float* buff_0 = FLA_FLOAT_PTR( FLA_ZERO );
104 
105  float first_elem;
106  int i;
107 
108  // b_alg = FLA_Obj_length( T );
109  int b_alg = m_T;
110 
111  for ( i = 0; i < b_alg; ++i )
112  {
113  float* A20 = buff_A + (0 )*cs_A + (i+1)*rs_A;
114  float* a21 = buff_A + (i )*cs_A + (i+1)*rs_A;
115 
116  float* a21_t = buff_A + (i )*cs_A + (i+1)*rs_A;
117  float* a21_b = buff_A + (i )*cs_A + (i+2)*rs_A;
118 
119  float* A22_t = buff_A + (i+1)*cs_A + (i+1)*rs_A;
120  float* A22_b = buff_A + (i+1)*cs_A + (i+2)*rs_A;
121 
122  float* A2_l = buff_A + (i+1)*cs_A + (0 )*rs_A;
123  float* A2_r = buff_A + (i+2)*cs_A + (0 )*rs_A;
124 
125  float* t01 = buff_T + (i )*cs_T + (0 )*rs_T;
126  float* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
127 
128  int m_ahead = m_A - i - 1;
129  int n_ahead = m_A - i - 1;
130  int n_behind = i;
131 
132  /*------------------------------------------------------------*/
133 
134  if ( m_ahead > 0 )
135  {
136  // FLA_Househ2_UT( FLA_LEFT,
137  // a21_t,
138  // a21_b, tau11 );
139  FLA_Househ2_UT_l_ops( m_ahead - 1,
140  a21_t,
141  a21_b, rs_A,
142  tau11 );
143 
144  // FLA_Copy( a21_t, first_elem );
145  // FLA_Set( FLA_ONE, a21_t );
146  first_elem = *a21_t;
147  *a21_t = *buff_1;
148 
149  // FLA_Apply_H2_UT( FLA_LEFT, tau11, a21_b, A22_t,
150  // A22_b );
151  FLA_Apply_H2_UT_l_ops_var1( m_ahead - 1,
152  n_ahead,
153  tau11,
154  a21_b, rs_A,
155  A22_t, cs_A,
156  A22_b, rs_A, cs_A );
157 
158  // FLA_Apply_H2_UT( FLA_RIGHT, tau11, a21_b, A2_l, A2_r );
160  n_ahead - 1,
161  tau11,
162  a21_b, rs_A,
163  A2_l, rs_A,
164  A2_r, rs_A, cs_A );
165 
166  // FLA_Gemv( FLA_CONJ_TRANSPOSE, FLA_ONE, A20, a21, FLA_ZERO, t01 );
169  m_ahead,
170  n_behind,
171  buff_1,
172  A20, rs_A, cs_A,
173  a21, rs_A,
174  buff_0,
175  t01, rs_T );
176 
177  // FLA_Copy( first_elem, a21_t );
178  *a21_t = first_elem;
179  }
180 
181  /*------------------------------------------------------------*/
182 
183  }
184 
185  return FLA_SUCCESS;
186 }
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Error FLA_Apply_H2_UT_r_ops_var1(int n_u2h_A2, int m_a1, float *tau, float *u2h, int inc_u2h, float *a1, int inc_a1, float *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_r_opt_var1.c:108
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
void bl1_sgemv(trans1_t transa, conj1_t conjx, int m, int n, float *alpha, float *a, int a_rs, int a_cs, float *x, int incx, float *beta, float *y, int incy)
Definition: bl1_gemv.c:13
FLA_Error FLA_Apply_H2_UT_l_ops_var1(int m_u2_A2, int n_a1t, float *tau, float *u2, int inc_u2, float *a1t, int inc_a1t, float *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_l_opt_var1.c:121
FLA_Error FLA_Househ2_UT_l_ops(int m_x2, float *chi_1, float *x2, int inc_x2, float *tau)
Definition: FLA_Househ2_UT.c:160
int i
Definition: bl1_axmyv2.c:145
FLA_Obj FLA_ZERO
Definition: FLA_Init.c:20

◆ FLA_Hess_UT_step_opt_var1()

FLA_Error FLA_Hess_UT_step_opt_var1 ( FLA_Obj  A,
FLA_Obj  T 
)

References FLA_Hess_UT_step_opc_var1(), FLA_Hess_UT_step_opd_var1(), FLA_Hess_UT_step_ops_var1(), FLA_Hess_UT_step_opz_var1(), FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_length(), and FLA_Obj_row_stride().

Referenced by FLA_Hess_UT_blk_var1(), and FLA_Hess_UT_opt_var1().

19 {
20  FLA_Datatype datatype;
21  int m_A, m_T;
22  int rs_A, cs_A;
23  int rs_T, cs_T;
24 
25  datatype = FLA_Obj_datatype( A );
26 
27  m_A = FLA_Obj_length( A );
28  m_T = FLA_Obj_length( T );
29 
30  rs_A = FLA_Obj_row_stride( A );
31  cs_A = FLA_Obj_col_stride( A );
32 
33  rs_T = FLA_Obj_row_stride( T );
34  cs_T = FLA_Obj_col_stride( T );
35 
36 
37  switch ( datatype )
38  {
39  case FLA_FLOAT:
40  {
41  float* buff_A = FLA_FLOAT_PTR( A );
42  float* buff_T = FLA_FLOAT_PTR( T );
43 
45  m_T,
46  buff_A, rs_A, cs_A,
47  buff_T, rs_T, cs_T );
48 
49  break;
50  }
51 
52  case FLA_DOUBLE:
53  {
54  double* buff_A = FLA_DOUBLE_PTR( A );
55  double* buff_T = FLA_DOUBLE_PTR( T );
56 
58  m_T,
59  buff_A, rs_A, cs_A,
60  buff_T, rs_T, cs_T );
61 
62  break;
63  }
64 
65  case FLA_COMPLEX:
66  {
67  scomplex* buff_A = FLA_COMPLEX_PTR( A );
68  scomplex* buff_T = FLA_COMPLEX_PTR( T );
69 
71  m_T,
72  buff_A, rs_A, cs_A,
73  buff_T, rs_T, cs_T );
74 
75  break;
76  }
77 
78  case FLA_DOUBLE_COMPLEX:
79  {
80  dcomplex* buff_A = FLA_DOUBLE_COMPLEX_PTR( A );
81  dcomplex* buff_T = FLA_DOUBLE_COMPLEX_PTR( T );
82 
84  m_T,
85  buff_A, rs_A, cs_A,
86  buff_T, rs_T, cs_T );
87 
88  break;
89  }
90  }
91 
92  return FLA_SUCCESS;
93 }
FLA_Error FLA_Hess_UT_step_opd_var1(int m_A, int m_T, double *buff_A, int rs_A, int cs_A, double *buff_T, int rs_T, int cs_T)
Definition: FLA_Hess_UT_opt_var1.c:190
dim_t FLA_Obj_row_stride(FLA_Obj obj)
Definition: FLA_Query.c:167
FLA_Error FLA_Hess_UT_step_ops_var1(int m_A, int m_T, float *buff_A, int rs_A, int cs_A, float *buff_T, int rs_T, int cs_T)
Definition: FLA_Hess_UT_opt_var1.c:97
FLA_Datatype FLA_Obj_datatype(FLA_Obj obj)
Definition: FLA_Query.c:13
FLA_Error FLA_Hess_UT_step_opc_var1(int m_A, int m_T, scomplex *buff_A, int rs_A, int cs_A, scomplex *buff_T, int rs_T, int cs_T)
Definition: FLA_Hess_UT_opt_var1.c:283
FLA_Error FLA_Hess_UT_step_opz_var1(int m_A, int m_T, dcomplex *buff_A, int rs_A, int cs_A, dcomplex *buff_T, int rs_T, int cs_T)
Definition: FLA_Hess_UT_opt_var1.c:376
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
Definition: blis_type_defs.h:137

◆ FLA_Hess_UT_step_opz_var1()

FLA_Error FLA_Hess_UT_step_opz_var1 ( int  m_A,
int  m_T,
dcomplex buff_A,
int  rs_A,
int  cs_A,
dcomplex buff_T,
int  rs_T,
int  cs_T 
)

References bl1_zgemv(), BLIS1_CONJ_TRANSPOSE, BLIS1_NO_CONJUGATE, FLA_Apply_H2_UT_l_opz_var1(), FLA_Apply_H2_UT_r_opz_var1(), FLA_Househ2_UT_l_opz(), FLA_ONE, FLA_ZERO, and i.

Referenced by FLA_Hess_UT_step_opt_var1().

380 {
381  dcomplex* buff_1 = FLA_DOUBLE_COMPLEX_PTR( FLA_ONE );
382  dcomplex* buff_0 = FLA_DOUBLE_COMPLEX_PTR( FLA_ZERO );
383 
384  dcomplex first_elem;
385  int i;
386 
387  // b_alg = FLA_Obj_length( T );
388  int b_alg = m_T;
389 
390  for ( i = 0; i < b_alg; ++i )
391  {
392  dcomplex* A20 = buff_A + (0 )*cs_A + (i+1)*rs_A;
393  dcomplex* a21 = buff_A + (i )*cs_A + (i+1)*rs_A;
394 
395  dcomplex* a21_t = buff_A + (i )*cs_A + (i+1)*rs_A;
396  dcomplex* a21_b = buff_A + (i )*cs_A + (i+2)*rs_A;
397 
398  dcomplex* A22_t = buff_A + (i+1)*cs_A + (i+1)*rs_A;
399  dcomplex* A22_b = buff_A + (i+1)*cs_A + (i+2)*rs_A;
400 
401  dcomplex* A2_l = buff_A + (i+1)*cs_A + (0 )*rs_A;
402  dcomplex* A2_r = buff_A + (i+2)*cs_A + (0 )*rs_A;
403 
404  dcomplex* t01 = buff_T + (i )*cs_T + (0 )*rs_T;
405  dcomplex* tau11 = buff_T + (i )*cs_T + (i )*rs_T;
406 
407  int m_ahead = m_A - i - 1;
408  int n_ahead = m_A - i - 1;
409  int n_behind = i;
410 
411  /*------------------------------------------------------------*/
412 
413  if ( m_ahead > 0 )
414  {
415  // FLA_Househ2_UT( FLA_LEFT,
416  // a21_t,
417  // a21_b, tau11 );
418  FLA_Househ2_UT_l_opz( m_ahead - 1,
419  a21_t,
420  a21_b, rs_A,
421  tau11 );
422 
423  // FLA_Copy( a21_t, first_elem );
424  // FLA_Set( FLA_ONE, a21_t );
425  first_elem = *a21_t;
426  *a21_t = *buff_1;
427 
428  // FLA_Apply_H2_UT( FLA_LEFT, tau11, a21_b, A22_t,
429  // A22_b );
430  FLA_Apply_H2_UT_l_opz_var1( m_ahead - 1,
431  n_ahead,
432  tau11,
433  a21_b, rs_A,
434  A22_t, cs_A,
435  A22_b, rs_A, cs_A );
436 
437  // FLA_Apply_H2_UT( FLA_RIGHT, tau11, a21_b, A2_l, A2_r );
439  n_ahead - 1,
440  tau11,
441  a21_b, rs_A,
442  A2_l, rs_A,
443  A2_r, rs_A, cs_A );
444 
445  // FLA_Gemv( FLA_CONJ_TRANSPOSE, FLA_ONE, A20, a21, FLA_ZERO, t01 );
448  m_ahead,
449  n_behind,
450  buff_1,
451  A20, rs_A, cs_A,
452  a21, rs_A,
453  buff_0,
454  t01, rs_T );
455 
456  // FLA_Copy( first_elem, a21_t );
457  *a21_t = first_elem;
458  }
459 
460  /*------------------------------------------------------------*/
461 
462  }
463 
464  return FLA_SUCCESS;
465 }
FLA_Error FLA_Apply_H2_UT_l_opz_var1(int m_u2_A2, int n_a1t, dcomplex *tau, dcomplex *u2, int inc_u2, dcomplex *a1t, int inc_a1t, dcomplex *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_l_opt_var1.c:343
Definition: blis_type_defs.h:57
Definition: blis_type_defs.h:81
FLA_Obj FLA_ONE
Definition: FLA_Init.c:18
void bl1_zgemv(trans1_t transa, conj1_t conjx, int m, int n, dcomplex *alpha, dcomplex *a, int a_rs, int a_cs, dcomplex *x, int incx, dcomplex *beta, dcomplex *y, int incy)
Definition: bl1_gemv.c:255
int i
Definition: bl1_axmyv2.c:145
FLA_Obj FLA_ZERO
Definition: FLA_Init.c:20
FLA_Error FLA_Househ2_UT_l_opz(int m_x2, dcomplex *chi_1, dcomplex *x2, int inc_x2, dcomplex *tau)
Definition: FLA_Househ2_UT.c:521
Definition: blis_type_defs.h:137
FLA_Error FLA_Apply_H2_UT_r_opz_var1(int n_u2h_A2, int m_a1, dcomplex *tau, dcomplex *u2h, int inc_u2h, dcomplex *a1, int inc_a1, dcomplex *A2, int rs_A2, int cs_A2)
Definition: FLA_Apply_H2_UT_r_opt_var1.c:327