libflame revision_anchor
FLA_Bsvd_v.h
Go to the documentation of this file.
1/*
2
3 Copyright (C) 2014, The University of Texas at Austin
4
5 This file is part of libflame and is available under the 3-Clause
6 BSD license, which can be found in the LICENSE file at the top-level
7 directory, or at http://opensource.org/licenses/BSD-3-Clause
8
9*/
10
11#include "FLA_Bsvd_iteracc_v.h"
12#include "FLA_Bsvd_sinval_v.h"
13#include "FLA_Bsvd_francis_v.h"
14
15// --- FLA_Bsvd_compute_shift() ------------------------------------------------
16
19 float tol,
20 float sminl,
21 float smax,
22 float* buff_d, int inc_d,
23 float* buff_e, int inc_e,
24 float* shift );
26 double tol,
27 double sminl,
28 double smax,
29 double* buff_d, int inc_d,
30 double* buff_e, int inc_e,
31 double* shift );
32
33// --- FLA_Bsvd_compute_tol_thresh() -------------------------------------------
34
37 float tolmul,
38 float maxit,
39 float* buff_d, int inc_d,
40 float* buff_e, int inc_e,
41 float* tol,
42 float* thresh );
44 double tolmul,
45 double maxit,
46 double* buff_d, int inc_d,
47 double* buff_e, int inc_e,
48 double* tol,
49 double* thresh );
50
51// --- FLA_Bsvd_find_converged() -----------------------------------------------
52
55 float tol,
56 float* buff_d, int inc_d,
57 float* buff_e, int inc_e,
58 float* sminl );
60 double tol,
61 double* buff_d, int inc_d,
62 double* buff_e, int inc_e,
63 double* sminl );
64
65// --- FLA_Bsvd_find_max_min() -------------------------------------------------
66
69 float* buff_d, int inc_d,
70 float* buff_e, int inc_e,
71 float* smax,
72 float* smin );
74 double* buff_d, int inc_d,
75 double* buff_e, int inc_e,
76 double* smax,
77 double* smin );
78
79// --- FLA_Bsvd_find_submatrix() -----------------------------------------------
80
82 int ij_begin,
83 float* buff_d, int inc_d,
84 float* buff_e, int inc_e,
85 int* ijTL,
86 int* ijBR );
88 int ij_begin,
89 double* buff_d, int inc_d,
90 double* buff_e, int inc_e,
91 int* ijTL,
92 int* ijBR );
93
94// --- FLA_Bsvd_v_opt_var1() ---------------------------------------------------
95
98 int m_U,
99 int m_V,
100 int n_GH,
101 int n_iter_max,
102 float* buff_d, int inc_d,
103 float* buff_e, int inc_e,
104 scomplex* buff_G, int rs_G, int cs_G,
105 scomplex* buff_H, int rs_H, int cs_H,
106 float* buff_U, int rs_U, int cs_U,
107 float* buff_V, int rs_V, int cs_V,
108 int b_alg );
110 int m_U,
111 int m_V,
112 int n_GH,
113 int n_iter_max,
114 double* buff_d, int inc_d,
115 double* buff_e, int inc_e,
116 dcomplex* buff_G, int rs_G, int cs_G,
117 dcomplex* buff_H, int rs_H, int cs_H,
118 double* buff_U, int rs_U, int cs_U,
119 double* buff_V, int rs_V, int cs_V,
120 int b_alg );
122 int m_U,
123 int m_V,
124 int n_GH,
125 int n_iter_max,
126 float* buff_d, int inc_d,
127 float* buff_e, int inc_e,
128 scomplex* buff_G, int rs_G, int cs_G,
129 scomplex* buff_H, int rs_H, int cs_H,
130 scomplex* buff_U, int rs_U, int cs_U,
131 scomplex* buff_V, int rs_V, int cs_V,
132 int b_alg );
134 int m_U,
135 int m_V,
136 int n_GH,
137 int n_iter_max,
138 double* buff_d, int inc_d,
139 double* buff_e, int inc_e,
140 dcomplex* buff_G, int rs_G, int cs_G,
141 dcomplex* buff_H, int rs_H, int cs_H,
142 dcomplex* buff_U, int rs_U, int cs_U,
143 dcomplex* buff_V, int rs_V, int cs_V,
144 int b_alg );
145
146// --- FLA_Bsvd_v_opt_var2() ---------------------------------------------------
147
150 int m_U,
151 int m_V,
152 int n_GH,
153 int n_iter_max,
154 float* buff_d, int inc_d,
155 float* buff_e, int inc_e,
156 scomplex* buff_G, int rs_G, int cs_G,
157 scomplex* buff_H, int rs_H, int cs_H,
158 float* buff_RG, int rs_RG, int cs_RG,
159 float* buff_RH, int rs_RH, int cs_RH,
160 float* buff_W, int rs_W, int cs_W,
161 float* buff_U, int rs_U, int cs_U,
162 float* buff_V, int rs_V, int cs_V,
163 int b_alg );
165 int m_U,
166 int m_V,
167 int n_GH,
168 int n_iter_max,
169 double* buff_d, int inc_d,
170 double* buff_e, int inc_e,
171 dcomplex* buff_G, int rs_G, int cs_G,
172 dcomplex* buff_H, int rs_H, int cs_H,
173 double* buff_RG, int rs_RG, int cs_RG,
174 double* buff_RH, int rs_RH, int cs_RH,
175 double* buff_W, int rs_W, int cs_W,
176 double* buff_U, int rs_U, int cs_U,
177 double* buff_V, int rs_V, int cs_V,
178 int b_alg );
180 int m_U,
181 int m_V,
182 int n_GH,
183 int n_iter_max,
184 float* buff_d, int inc_d,
185 float* buff_e, int inc_e,
186 scomplex* buff_G, int rs_G, int cs_G,
187 scomplex* buff_H, int rs_H, int cs_H,
188 float* buff_RG, int rs_RG, int cs_RG,
189 float* buff_RH, int rs_RH, int cs_RH,
190 scomplex* buff_W, int rs_W, int cs_W,
191 scomplex* buff_U, int rs_U, int cs_U,
192 scomplex* buff_V, int rs_V, int cs_V,
193 int b_alg );
195 int m_U,
196 int m_V,
197 int n_GH,
198 int n_iter_max,
199 double* buff_d, int inc_d,
200 double* buff_e, int inc_e,
201 dcomplex* buff_G, int rs_G, int cs_G,
202 dcomplex* buff_H, int rs_H, int cs_H,
203 double* buff_RG, int rs_RG, int cs_RG,
204 double* buff_RH, int rs_RH, int cs_RH,
205 dcomplex* buff_W, int rs_W, int cs_W,
206 dcomplex* buff_U, int rs_U, int cs_U,
207 dcomplex* buff_V, int rs_V, int cs_V,
208 int b_alg );
209
FLA_Error FLA_Bsvd_v_opd_var2(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, double *buff_d, int inc_d, double *buff_e, int inc_e, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_H, int rs_H, int cs_H, double *buff_RG, int rs_RG, int cs_RG, double *buff_RH, int rs_RH, int cs_RH, double *buff_W, int rs_W, int cs_W, double *buff_U, int rs_U, int cs_U, double *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var2.c:214
FLA_Error FLA_Bsvd_find_converged_ops(int m_A, float tol, float *buff_d, int inc_d, float *buff_e, int inc_e, float *sminl)
Definition FLA_Bsvd_find_converged.c:68
FLA_Error FLA_Bsvd_compute_tol_thresh(FLA_Obj tolmul, FLA_Obj maxit, FLA_Obj d, FLA_Obj e, FLA_Obj tol, FLA_Obj thresh)
Definition FLA_Bsvd_compute_tol_thresh.c:13
FLA_Error FLA_Bsvd_find_converged_opd(int m_A, double tol, double *buff_d, int inc_d, double *buff_e, int inc_e, double *sminl)
Definition FLA_Bsvd_find_converged.c:117
FLA_Error FLA_Bsvd_v_opd_var1(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, double *buff_d, int inc_d, double *buff_e, int inc_e, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_H, int rs_H, int cs_H, double *buff_U, int rs_U, int cs_U, double *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var1.c:397
FLA_Error FLA_Bsvd_compute_tol_thresh_ops(int m_A, float tolmul, float maxit, float *buff_d, int inc_d, float *buff_e, int inc_e, float *tol, float *thresh)
Definition FLA_Bsvd_compute_tol_thresh.c:78
FLA_Error FLA_Bsvd_v_opc_var1(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, float *buff_d, int inc_d, float *buff_e, int inc_e, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_H, int rs_H, int cs_H, scomplex *buff_U, int rs_U, int cs_U, scomplex *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var1.c:674
FLA_Error FLA_Bsvd_compute_shift(FLA_Obj tol, FLA_Obj sminl, FLA_Obj smax, FLA_Obj d, FLA_Obj e, FLA_Obj shift)
Definition FLA_Bsvd_compute_shift.c:13
FLA_Error FLA_Bsvd_v_ops_var2(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, float *buff_d, int inc_d, float *buff_e, int inc_e, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_H, int rs_H, int cs_H, float *buff_RG, int rs_RG, int cs_RG, float *buff_RH, int rs_RH, int cs_RH, float *buff_W, int rs_W, int cs_W, float *buff_U, int rs_U, int cs_U, float *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var2.c:191
FLA_Error FLA_Bsvd_v_opz_var1(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, double *buff_d, int inc_d, double *buff_e, int inc_e, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_H, int rs_H, int cs_H, dcomplex *buff_U, int rs_U, int cs_U, dcomplex *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var1.c:912
FLA_Error FLA_Bsvd_find_submatrix_ops(int mn_A, int ij_begin, float *buff_d, int inc_d, float *buff_e, int inc_e, int *ijTL, int *ijBR)
Definition FLA_Bsvd_find_submatrix.c:14
FLA_Error FLA_Bsvd_find_max_min(FLA_Obj d, FLA_Obj e, FLA_Obj smax, FLA_Obj smin)
FLA_Error FLA_Bsvd_compute_shift_opd(int m_A, double tol, double sminl, double smax, double *buff_d, int inc_d, double *buff_e, int inc_e, double *shift)
Definition FLA_Bsvd_compute_shift.c:130
FLA_Error FLA_Bsvd_v_opt_var2(dim_t n_iter_max, FLA_Obj d, FLA_Obj e, FLA_Obj G, FLA_Obj H, FLA_Obj RG, FLA_Obj RH, FLA_Obj W, FLA_Obj U, FLA_Obj V, dim_t b_alg)
Definition FLA_Bsvd_v_opt_var2.c:13
FLA_Error FLA_Bsvd_v_opc_var2(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, float *buff_d, int inc_d, float *buff_e, int inc_e, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_H, int rs_H, int cs_H, float *buff_RG, int rs_RG, int cs_RG, float *buff_RH, int rs_RH, int cs_RH, scomplex *buff_W, int rs_W, int cs_W, scomplex *buff_U, int rs_U, int cs_U, scomplex *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var2.c:529
FLA_Error FLA_Bsvd_find_max_min_opd(int m_A, double *buff_d, int inc_d, double *buff_e, int inc_e, double *smax, double *smin)
Definition FLA_Bsvd_find_max_min.c:103
FLA_Error FLA_Bsvd_find_max_min_ops(int m_A, float *buff_d, int inc_d, float *buff_e, int inc_e, float *smax, float *smin)
Definition FLA_Bsvd_find_max_min.c:68
FLA_Error FLA_Bsvd_compute_tol_thresh_opd(int m_A, double tolmul, double maxit, double *buff_d, int inc_d, double *buff_e, int inc_e, double *tol, double *thresh)
Definition FLA_Bsvd_compute_tol_thresh.c:137
FLA_Error FLA_Bsvd_v_opz_var2(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, double *buff_d, int inc_d, double *buff_e, int inc_e, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_H, int rs_H, int cs_H, double *buff_RG, int rs_RG, int cs_RG, double *buff_RH, int rs_RH, int cs_RH, dcomplex *buff_W, int rs_W, int cs_W, dcomplex *buff_U, int rs_U, int cs_U, dcomplex *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var2.c:550
FLA_Error FLA_Bsvd_find_submatrix_opd(int mn_A, int ij_begin, double *buff_d, int inc_d, double *buff_e, int inc_e, int *ijTL, int *ijBR)
Definition FLA_Bsvd_find_submatrix.c:73
FLA_Error FLA_Bsvd_v_ops_var1(int min_m_n, int m_U, int m_V, int n_GH, int n_iter_max, float *buff_d, int inc_d, float *buff_e, int inc_e, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_H, int rs_H, int cs_H, float *buff_U, int rs_U, int cs_U, float *buff_V, int rs_V, int cs_V, int b_alg)
Definition FLA_Bsvd_v_opt_var1.c:157
FLA_Error FLA_Bsvd_v_opt_var1(dim_t n_iter_max, FLA_Obj d, FLA_Obj e, FLA_Obj G, FLA_Obj H, FLA_Obj U, FLA_Obj V, dim_t b_alg)
Definition FLA_Bsvd_v_opt_var1.c:15
FLA_Error FLA_Bsvd_find_converged(FLA_Obj tol, FLA_Obj d, FLA_Obj e, FLA_Obj sminl)
Definition FLA_Bsvd_find_converged.c:13
FLA_Error FLA_Bsvd_compute_shift_ops(int m_A, float tol, float sminl, float smax, float *buff_d, int inc_d, float *buff_e, int inc_e, float *shift)
Definition FLA_Bsvd_compute_shift.c:75
int FLA_Error
Definition FLA_type_defs.h:47
unsigned long dim_t
Definition FLA_type_defs.h:71
int i
Definition bl1_axmyv2.c:145
Definition FLA_type_defs.h:159
Definition blis_type_defs.h:138
Definition blis_type_defs.h:133