libflame revision_anchor
FLA_lapack_f77_prototypes.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// --- Name-mangling macro definitions -----------------------------------------
12
13// --- Define Fortran name-mangling macro --------------------------
14
15#define F77_spotrf F77_FUNC( spotrf , SPOTRF )
16#define F77_dpotrf F77_FUNC( dpotrf , DPOTRF )
17#define F77_cpotrf F77_FUNC( cpotrf , CPOTRF )
18#define F77_zpotrf F77_FUNC( zpotrf , ZPOTRF )
19
20#define F77_spotf2 F77_FUNC( spotf2 , SPOTF2 )
21#define F77_dpotf2 F77_FUNC( dpotf2 , DPOTF2 )
22#define F77_cpotf2 F77_FUNC( cpotf2 , CPOTF2 )
23#define F77_zpotf2 F77_FUNC( zpotf2 , ZPOTF2 )
24
25
26#define F77_sgetrf F77_FUNC( sgetrf , SGETRF )
27#define F77_dgetrf F77_FUNC( dgetrf , DGETRF )
28#define F77_cgetrf F77_FUNC( cgetrf , CGETRF )
29#define F77_zgetrf F77_FUNC( zgetrf , ZGETRF )
30
31#define F77_sgetf2 F77_FUNC( sgetf2 , SGETF2 )
32#define F77_dgetf2 F77_FUNC( dgetf2 , DGETF2 )
33#define F77_cgetf2 F77_FUNC( cgetf2 , CGETF2 )
34#define F77_zgetf2 F77_FUNC( zgetf2 , ZGETF2 )
35
36#define F77_sgeqrf F77_FUNC( sgeqrf , SGEQRF )
37#define F77_dgeqrf F77_FUNC( dgeqrf , DGEQRF )
38#define F77_cgeqrf F77_FUNC( cgeqrf , CGEQRF )
39#define F77_zgeqrf F77_FUNC( zgeqrf , ZGEQRF )
40
41#define F77_sgeqr2 F77_FUNC( sgeqr2 , SGEQR2 )
42#define F77_dgeqr2 F77_FUNC( dgeqr2 , DGEQR2 )
43#define F77_cgeqr2 F77_FUNC( cgeqr2 , CGEQR2 )
44#define F77_zgeqr2 F77_FUNC( zgeqr2 , ZGEQR2 )
45
46#define F77_sgeqrfp F77_FUNC( sgeqrfp , SGEQRFP )
47#define F77_dgeqrfp F77_FUNC( dgeqrfp , DGEQRFP )
48#define F77_cgeqrfp F77_FUNC( cgeqrfp , CGEQRFP )
49#define F77_zgeqrfp F77_FUNC( zgeqrfp , ZGEQRFP )
50
51#define F77_sgeqr2p F77_FUNC( sgeqr2p , SGEQR2P )
52#define F77_dgeqr2p F77_FUNC( dgeqr2p , DGEQR2P )
53#define F77_cgeqr2p F77_FUNC( cgeqr2p , CGEQR2P )
54#define F77_zgeqr2p F77_FUNC( zgeqr2p , ZGEQR2P )
55
56#define F77_sgeqr2 F77_FUNC( sgeqr2 , SGEQR2 )
57#define F77_dgeqr2 F77_FUNC( dgeqr2 , DGEQR2 )
58#define F77_cgeqr2 F77_FUNC( cgeqr2 , CGEQR2 )
59#define F77_zgeqr2 F77_FUNC( zgeqr2 , ZGEQR2 )
60
61#define F77_sgeqpf F77_FUNC( sgeqpf , SGEQPF )
62#define F77_dgeqpf F77_FUNC( dgeqpf , DGEQPF )
63#define F77_cgeqpf F77_FUNC( cgeqpf , CGEQPF )
64#define F77_zgeqpf F77_FUNC( zgeqpf , ZGEQPF )
65
66#define F77_sgeqp3 F77_FUNC( sgeqp3 , SGEQP3 )
67#define F77_dgeqp3 F77_FUNC( dgeqp3 , DGEQP3 )
68#define F77_cgeqp3 F77_FUNC( cgeqp3 , CGEQP3 )
69#define F77_zgeqp3 F77_FUNC( zgeqp3 , ZGEQP3 )
70
71#define F77_sgelsd F77_FUNC( sgelsd , SGELSD )
72#define F77_dgelsd F77_FUNC( dgelsd , DGELSD )
73#define F77_cgelsd F77_FUNC( cgelsd , CGELSD )
74#define F77_zgelsd F77_FUNC( zgelsd , ZGELSD )
75
76#define F77_sgelss F77_FUNC( sgelss , SGELSS )
77#define F77_dgelss F77_FUNC( dgelss , DGELSS )
78#define F77_cgelss F77_FUNC( cgelss , CGELSS )
79#define F77_zgelss F77_FUNC( zgelss , ZGELSS )
80
81#define F77_sgelqf F77_FUNC( sgelqf , SGELQF )
82#define F77_dgelqf F77_FUNC( dgelqf , DGELQF )
83#define F77_cgelqf F77_FUNC( cgelqf , CGELQF )
84#define F77_zgelqf F77_FUNC( zgelqf , ZGELQF )
85
86#define F77_sgelq2 F77_FUNC( sgelq2 , SGELQ2 )
87#define F77_dgelq2 F77_FUNC( dgelq2 , DGELQ2 )
88#define F77_cgelq2 F77_FUNC( cgelq2 , CGELQ2 )
89#define F77_zgelq2 F77_FUNC( zgelq2 , ZGELQ2 )
90
91#define F77_slauum F77_FUNC( slauum , SLAUUM )
92#define F77_dlauum F77_FUNC( dlauum , DLAUUM )
93#define F77_clauum F77_FUNC( clauum , CLAUUM )
94#define F77_zlauum F77_FUNC( zlauum , ZLAUUM )
95
96#define F77_slauu2 F77_FUNC( slauu2 , SLAUU2 )
97#define F77_dlauu2 F77_FUNC( dlauu2 , DLAUU2 )
98#define F77_clauu2 F77_FUNC( clauu2 , CLAUU2 )
99#define F77_zlauu2 F77_FUNC( zlauu2 , ZLAUU2 )
100
101#define F77_spotri F77_FUNC( spotri , SPOTRI )
102#define F77_dpotri F77_FUNC( dpotri , DPOTRI )
103#define F77_cpotri F77_FUNC( cpotri , CPOTRI )
104#define F77_zpotri F77_FUNC( zpotri , ZPOTRI )
105
106#define F77_strtri F77_FUNC( strtri , STRTRI )
107#define F77_dtrtri F77_FUNC( dtrtri , DTRTRI )
108#define F77_ctrtri F77_FUNC( ctrtri , CTRTRI )
109#define F77_ztrtri F77_FUNC( ztrtri , ZTRTRI )
110
111#define F77_strti2 F77_FUNC( strti2 , STRTI2 )
112#define F77_dtrti2 F77_FUNC( dtrti2 , DTRTI2 )
113#define F77_ctrti2 F77_FUNC( ctrti2 , CTRTI2 )
114#define F77_ztrti2 F77_FUNC( ztrti2 , ZTRTI2 )
115
116
117#define F77_strsyl F77_FUNC( strsyl , STRSYL )
118#define F77_dtrsyl F77_FUNC( dtrsyl , DTRSYL )
119#define F77_ctrsyl F77_FUNC( ctrsyl , CTRSYL )
120#define F77_ztrsyl F77_FUNC( ztrsyl , ZTRSYL )
121
122
123#define F77_sgehrd F77_FUNC( sgehrd , SGEHRD )
124#define F77_dgehrd F77_FUNC( dgehrd , DGEHRD )
125#define F77_cgehrd F77_FUNC( cgehrd , CGEHRD )
126#define F77_zgehrd F77_FUNC( zgehrd , ZGEHRD )
127
128#define F77_sgehd2 F77_FUNC( sgehd2 , SGEHD2 )
129#define F77_dgehd2 F77_FUNC( dgehd2 , DGEHD2 )
130#define F77_cgehd2 F77_FUNC( cgehd2 , CGEHD2 )
131#define F77_zgehd2 F77_FUNC( zgehd2 , ZGEHD2 )
132
133
134#define F77_ssytrd F77_FUNC( ssytrd , SSYTRD )
135#define F77_dsytrd F77_FUNC( dsytrd , DSYTRD )
136#define F77_chetrd F77_FUNC( chetrd , CHETRD )
137#define F77_zhetrd F77_FUNC( zhetrd , ZHETRD )
138
139
140#define F77_ssytd2 F77_FUNC( ssytd2 , SSYTD2 )
141#define F77_dsytd2 F77_FUNC( dsytd2 , DSYTD2 )
142#define F77_chetd2 F77_FUNC( chetd2 , CHETD2 )
143#define F77_zhetd2 F77_FUNC( zhetd2 , ZHETD2 )
144
145
146#define F77_sgebrd F77_FUNC( sgebrd , SGEBRD )
147#define F77_dgebrd F77_FUNC( dgebrd , DGEBRD )
148#define F77_cgebrd F77_FUNC( cgebrd , CGEBRD )
149#define F77_zgebrd F77_FUNC( zgebrd , ZGEBRD )
150
151
152#define F77_sgebd2 F77_FUNC( sgebd2 , SGEBD2 )
153#define F77_dgebd2 F77_FUNC( dgebd2 , DGEBD2 )
154#define F77_cgebd2 F77_FUNC( cgebd2 , CGEBD2 )
155#define F77_zgebd2 F77_FUNC( zgebd2 , ZGEBD2 )
156
157
158#define F77_ssygst F77_FUNC( ssygst , SSYGST )
159#define F77_dsygst F77_FUNC( dsygst , DSYGST )
160#define F77_chegst F77_FUNC( chegst , CHEGST )
161#define F77_zhegst F77_FUNC( zhegst , ZHEGST )
162
163#define F77_ssygs2 F77_FUNC( ssygs2 , SSYGS2 )
164#define F77_dsygs2 F77_FUNC( dsygs2 , DSYGS2 )
165#define F77_chegs2 F77_FUNC( chegs2 , CHEGS2 )
166#define F77_zhegs2 F77_FUNC( zhegs2 , ZHEGS2 )
167
168
169#define F77_slarft F77_FUNC( slarft , SLARFT )
170#define F77_dlarft F77_FUNC( dlarft , DLARFT )
171#define F77_clarft F77_FUNC( clarft , CLARFT )
172#define F77_zlarft F77_FUNC( zlarft , ZLARFT )
173
174
175#define F77_slarfg F77_FUNC( slarfg , SLARFG )
176#define F77_dlarfg F77_FUNC( dlarfg , DLARFG )
177#define F77_clarfg F77_FUNC( clarfg , CLARFG )
178#define F77_zlarfg F77_FUNC( zlarfg , ZLARFG )
179
180#define F77_slarfgp F77_FUNC( slarfgp , SLARFGP )
181#define F77_dlarfgp F77_FUNC( dlarfgp , DLARFGP )
182#define F77_clarfgp F77_FUNC( clarfgp , CLARFGP )
183#define F77_zlarfgp F77_FUNC( zlarfgp , ZLARFGP )
184
185#define F77_sorgqr F77_FUNC( sorgqr , SORGQR )
186#define F77_dorgqr F77_FUNC( dorgqr , DORGQR )
187#define F77_cungqr F77_FUNC( cungqr , CUNGQR )
188#define F77_zungqr F77_FUNC( zungqr , ZUNGQR )
189
190#define F77_sorg2r F77_FUNC( sorg2r , SORG2R )
191#define F77_dorg2r F77_FUNC( dorg2r , DORG2R )
192#define F77_cung2r F77_FUNC( cung2r , CUNG2R )
193#define F77_zung2r F77_FUNC( zung2r , ZUNG2R )
194
195#define F77_sormqr F77_FUNC( sormqr , SORMQR )
196#define F77_dormqr F77_FUNC( dormqr , DORMQR )
197#define F77_cunmqr F77_FUNC( cunmqr , CUNMQR )
198#define F77_zunmqr F77_FUNC( zunmqr , ZUNMQR )
199
200#define F77_sorm2r F77_FUNC( sorm2r , SORM2R )
201#define F77_dorm2r F77_FUNC( dorm2r , DORM2R )
202#define F77_cunm2r F77_FUNC( cunm2r , CUNM2R )
203#define F77_zunm2r F77_FUNC( zunm2r , ZUNM2R )
204
205#define F77_sormlq F77_FUNC( sormlq , SORMLQ )
206#define F77_dormlq F77_FUNC( dormlq , DORMLQ )
207#define F77_cunmlq F77_FUNC( cunmlq , CUNMLQ )
208#define F77_zunmlq F77_FUNC( zunmlq , ZUNMLQ )
209
210#define F77_sorml2 F77_FUNC( sorml2 , SORML2 )
211#define F77_dorml2 F77_FUNC( dorml2 , DORML2 )
212#define F77_cunml2 F77_FUNC( cunml2 , CUNML2 )
213#define F77_zunml2 F77_FUNC( zunml2 , ZUNML2 )
214
215#define F77_sorglq F77_FUNC( sorglq , SORGLQ )
216#define F77_dorglq F77_FUNC( dorglq , DORGLQ )
217#define F77_cunglq F77_FUNC( cunglq , CUNGLQ )
218#define F77_zunglq F77_FUNC( zunglq , ZUNGLQ )
219
220#define F77_sorgl2 F77_FUNC( sorgl2 , SORGL2 )
221#define F77_dorgl2 F77_FUNC( dorgl2 , DORGL2 )
222#define F77_cungl2 F77_FUNC( cungl2 , CUNGL2 )
223#define F77_zungl2 F77_FUNC( zungl2 , ZUNGL2 )
224
225#define F77_sorgtr F77_FUNC( sorgtr , SORGTR )
226#define F77_dorgtr F77_FUNC( dorgtr , DORGTR )
227#define F77_cungtr F77_FUNC( cungtr , CUNGTR )
228#define F77_zungtr F77_FUNC( zungtr , ZUNGTR )
229
230
231#define F77_sormtr F77_FUNC( sormtr , SORMTR )
232#define F77_dormtr F77_FUNC( dormtr , DORMTR )
233#define F77_cunmtr F77_FUNC( cunmtr , CUNMTR )
234#define F77_zunmtr F77_FUNC( zunmtr , ZUNMTR )
235
236
237#define F77_sorgbr F77_FUNC( sorgbr , SORGBR )
238#define F77_dorgbr F77_FUNC( dorgbr , DORGBR )
239#define F77_cungbr F77_FUNC( cungbr , CUNGBR )
240#define F77_zungbr F77_FUNC( zungbr , ZUNGBR )
241
242
243#define F77_sormbr F77_FUNC( sormbr , SORMBR )
244#define F77_dormbr F77_FUNC( dormbr , DORMBR )
245#define F77_cunmbr F77_FUNC( cunmbr , CUNMBR )
246#define F77_zunmbr F77_FUNC( zunmbr , ZUNMBR )
247
248
249#define F77_ssteqr F77_FUNC( ssteqr , SSTEQR )
250#define F77_dsteqr F77_FUNC( dsteqr , DSTEQR )
251#define F77_csteqr F77_FUNC( csteqr , CSTEQR )
252#define F77_zsteqr F77_FUNC( zsteqr , ZSTEQR )
253
254
255#define F77_sstedc F77_FUNC( sstedc , SSTEDC )
256#define F77_dstedc F77_FUNC( dstedc , DSTEDC )
257#define F77_cstedc F77_FUNC( cstedc , CSTEDC )
258#define F77_zstedc F77_FUNC( zstedc , ZSTEDC )
259
260
261#define F77_sstemr F77_FUNC( sstemr , SSTEMR )
262#define F77_dstemr F77_FUNC( dstemr , DSTEMR )
263#define F77_cstemr F77_FUNC( cstemr , CSTEMR )
264#define F77_zstemr F77_FUNC( zstemr , ZSTEMR )
265
266
267#define F77_ssyev F77_FUNC( ssyev , SSYEV )
268#define F77_dsyev F77_FUNC( dsyev , DSYEV )
269#define F77_cheev F77_FUNC( cheev , CHEEV )
270#define F77_zheev F77_FUNC( zheev , ZHEEV )
271
272
273#define F77_ssyevd F77_FUNC( ssyevd , SSYEVD )
274#define F77_dsyevd F77_FUNC( dsyevd , DSYEVD )
275#define F77_cheevd F77_FUNC( cheevd , CHEEVD )
276#define F77_zheevd F77_FUNC( zheevd , ZHEEVD )
277
278
279#define F77_ssyevr F77_FUNC( ssyevr , SSYEVR )
280#define F77_dsyevr F77_FUNC( dsyevr , DSYEVR )
281#define F77_cheevr F77_FUNC( cheevr , CHEEVR )
282#define F77_zheevr F77_FUNC( zheevr , ZHEEVR )
283
284
285#define F77_sbdsqr F77_FUNC( sbdsqr , SBDSQR )
286#define F77_dbdsqr F77_FUNC( dbdsqr , DBDSQR )
287#define F77_cbdsqr F77_FUNC( cbdsqr , CBDSQR )
288#define F77_zbdsqr F77_FUNC( zbdsqr , ZBDSQR )
289
290
291#define F77_sbdsdc F77_FUNC( sbdsdc , SBDSDC )
292#define F77_dbdsdc F77_FUNC( dbdsdc , DBDSDC )
293
294
295#define F77_sgesvd F77_FUNC( sgesvd , SGESVD )
296#define F77_dgesvd F77_FUNC( dgesvd , DGESVD )
297#define F77_cgesvd F77_FUNC( cgesvd , CGESVD )
298#define F77_zgesvd F77_FUNC( zgesvd , ZGESVD )
299
300
301#define F77_sgesdd F77_FUNC( sgesdd , SGESDD )
302#define F77_dgesdd F77_FUNC( dgesdd , DGESDD )
303#define F77_cgesdd F77_FUNC( cgesdd , CGESDD )
304#define F77_zgesdd F77_FUNC( zgesdd , ZGESDD )
305
306
307#define F77_slaswp F77_FUNC( slaswp , SLASWP )
308#define F77_dlaswp F77_FUNC( dlaswp , DLASWP )
309#define F77_claswp F77_FUNC( claswp , CLASWP )
310#define F77_zlaswp F77_FUNC( zlaswp , ZLASWP )
311
312
313#define F77_slaset F77_FUNC( slaset , SLASET )
314#define F77_dlaset F77_FUNC( dlaset , DLASET )
315#define F77_claset F77_FUNC( claset , CLASET )
316#define F77_zlaset F77_FUNC( zlaset , ZLASET )
317
318
319// --- Cholesky factorization ---
320
321int F77_spotrf( char* uplo, int* n, float* a, int* lda, int* info );
322int F77_dpotrf( char* uplo, int* n, double* a, int* lda, int* info );
323int F77_cpotrf( char* uplo, int* n, scomplex* a, int* lda, int* info );
324int F77_zpotrf( char* uplo, int* n, dcomplex* a, int* lda, int* info );
325
326int F77_spotf2( char* uplo, int* n, float* a, int* lda, int* info );
327int F77_dpotf2( char* uplo, int* n, double* a, int* lda, int* info );
328int F77_cpotf2( char* uplo, int* n, scomplex* a, int* lda, int* info );
329int F77_zpotf2( char* uplo, int* n, dcomplex* a, int* lda, int* info );
330
331// --- LU factorization with partial pivoting ---
332
333int F77_sgetrf( int* m, int* n, float* a, int* lda, int* ipiv, int* info );
334int F77_dgetrf( int* m, int* n, double* a, int* lda, int* ipiv, int* info );
335int F77_cgetrf( int* m, int* n, scomplex* a, int* lda, int* ipiv, int* info );
336int F77_zgetrf( int* m, int* n, dcomplex* a, int* lda, int* ipiv, int* info );
337
338int F77_sgetf2( int* m, int* n, float* a, int* lda, int* ipiv, int* info );
339int F77_dgetf2( int* m, int* n, double* a, int* lda, int* ipiv, int* info );
340int F77_cgetf2( int* m, int* n, scomplex* a, int* lda, int* ipiv, int* info );
341int F77_zgetf2( int* m, int* n, dcomplex* a, int* lda, int* ipiv, int* info );
342
343// --- QR factorization (classic) ---
344
345int F77_sgeqrf( int* m, int* n, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
346int F77_dgeqrf( int* m, int* n, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
347int F77_cgeqrf( int* m, int* n, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
348int F77_zgeqrf( int* m, int* n, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
349
350int F77_sgeqr2( int* m, int* n, float* a, int* lda, float* tau, float* work, int* info );
351int F77_dgeqr2( int* m, int* n, double* a, int* lda, double* tau, double* work, int* info );
352int F77_cgeqr2( int* m, int* n, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* info );
353int F77_zgeqr2( int* m, int* n, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* info );
354
355int F77_sgeqpf( int* m, int* n, float* a, int* lda, int* jpvt, float* tau, float* work, int* info );
356int F77_dgeqpf( int* m, int* n, double* a, int* lda, int* jpvt, double* tau, double* work, int* info );
357int F77_cgeqpf( int* m, int* n, scomplex* a, int* lda, int* jpvt, scomplex* tau, scomplex* work, float* rwork, int* info );
358int F77_zgeqpf( int* m, int* n, dcomplex* a, int* lda, int* jpvt, dcomplex* tau, dcomplex* work, double* rwork, int* info );
359
360int F77_sgeqp3( int* m, int* n, float* a, int* lda, int* jpvt, float* tau, float* work, int* lwork, int* info );
361int F77_dgeqp3( int* m, int* n, double* a, int* lda, int* jpvt, double* tau, double* work, int* lwork, int* info );
362int F77_cgeqp3( int* m, int* n, scomplex* a, int* lda, int* jpvt, scomplex* tau, scomplex* work, int* lwork, float* rwork, int* info );
363int F77_zgeqp3( int* m, int* n, dcomplex* a, int* lda, int* jpvt, dcomplex* tau, dcomplex* work, int* lwork, double* rwork, int* info );
364
365// --- LQ factorization (classic) ---
366
367int F77_sgelqf( int* m, int* n, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
368int F77_dgelqf( int* m, int* n, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
369int F77_cgelqf( int* m, int* n, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
370int F77_zgelqf( int* m, int* n, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
371
372int F77_sgelq2( int* m, int* n, float* a, int* lda, float* tau, float* work, int* info );
373int F77_dgelq2( int* m, int* n, double* a, int* lda, double* tau, double* work, int* info );
374int F77_cgelq2( int* m, int* n, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* info );
375int F77_zgelq2( int* m, int* n, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* info );
376
377// --- LS solver ---
378
379int F77_sgelsd( int* m, int* n, int* nrhs, float* a, int* lda, float* b, int* ldb, float* s, float* rcond, int* rank, float* work, int* lwork, int* iwork, int* info );
380int F77_dgelsd( int* m, int* n, int* nrhs, double* a, int* lda, double* b, int* ldb, double* s, double* rcond, int* rank, double* work, int* lwork, int* iwork, int* info );
381int F77_cgelsd( int* m, int* n, int* nrhs, scomplex* a, int* lda, scomplex* b, int* ldb, float* s, float* rcond, int* rank, scomplex* work, int* lwork, float* rwork, int* iwork, int* info );
382int F77_zgelsd( int* m, int* n, int* nrhs, dcomplex* a, int* lda, dcomplex* b, int* ldb, double* s, double* rcond, int* rank, dcomplex* work, int* lwork, double* rwork, int* iwork, int* info );
383
384int F77_sgelss( int* m, int* n, int* nrhs, float* a, int* lda, float* b, int* ldb, float* s, float* rcond, int* rank, float* work, int* lwork, int* info );
385int F77_dgelss( int* m, int* n, int* nrhs, double* a, int* lda, double* b, int* ldb, double* s, double* rcond, int* rank, double* work, int* lwork, int* info );
386int F77_cgelss( int* m, int* n, int* nrhs, scomplex* a, int* lda, scomplex* b, int* ldb, float* s, float* rcond, int* rank, scomplex* work, int* lwork, float* rwork, int* info );
387int F77_zgelss( int* m, int* n, int* nrhs, dcomplex* a, int* lda, dcomplex* b, int* ldb, double* s, double* rcond, int* rank, dcomplex* work, int* lwork, double* rwork, int* info );
388
389// --- Triangular-transpose matrix multiply ---
390
391int F77_slauum( char* uplo, int* n, float* a, int* lda, int* info );
392int F77_dlauum( char* uplo, int* n, double* a, int* lda, int* info );
393int F77_clauum( char* uplo, int* n, scomplex* a, int* lda, int* info );
394int F77_zlauum( char* uplo, int* n, dcomplex* a, int* lda, int* info );
395
396int F77_slauu2( char* uplo, int* n, float* a, int* lda, int* info );
397int F77_dlauu2( char* uplo, int* n, double* a, int* lda, int* info );
398int F77_clauu2( char* uplo, int* n, scomplex* a, int* lda, int* info );
399int F77_zlauu2( char* uplo, int* n, dcomplex* a, int* lda, int* info );
400
401// --- Symmetric (hermitian) positive definite matrix inversion ---
402
403int F77_spotri( char* uplo, int* n, float* buff_A, int* ldim_A, int* info );
404int F77_dpotri( char* uplo, int* n, double* buff_A, int* ldim_A, int* info );
405int F77_cpotri( char* uplo, int* n, scomplex* buff_A, int* ldim_A, int* info );
406int F77_zpotri( char* uplo, int* n, dcomplex* buff_A, int* ldim_A, int* info );
407
408// --- Triangular matrix inversion ---
409
410int F77_strtri( char* uplo, char* diag, int* n, float* a, int* lda, int* info );
411int F77_dtrtri( char* uplo, char* diag, int* n, double* a, int* lda, int* info );
412int F77_ctrtri( char* uplo, char* diag, int* n, scomplex* a, int* lda, int* info );
413int F77_ztrtri( char* uplo, char* diag, int* n, dcomplex* a, int* lda, int* info );
414
415int F77_strti2( char* uplo, char* diag, int* n, float* a, int* lda, int* info );
416int F77_dtrti2( char* uplo, char* diag, int* n, double* a, int* lda, int* info );
417int F77_ctrti2( char* uplo, char* diag, int* n, scomplex* a, int* lda, int* info );
418int F77_ztrti2( char* uplo, char* diag, int* n, dcomplex* a, int* lda, int* info );
419
420// --- Triangular Sylvester equation solve ---
421
422int F77_strsyl( char* transa, char* transb, int* isgn, int* m, int* n, float* a, int* lda, float* b, int* ldb, float* c, int* ldc, float* scale, int* info );
423int F77_dtrsyl( char* transa, char* transb, int* isgn, int* m, int* n, double* a, int* lda, double* b, int* ldb, double* c, int* ldc, double* scale, int* info );
424int F77_ctrsyl( char* transa, char* transb, int* isgn, int* m, int* n, scomplex* a, int* lda, scomplex* b, int* ldb, scomplex* c, int* ldc, float* scale, int* info );
425int F77_ztrsyl( char* transa, char* transb, int* isgn, int* m, int* n, dcomplex* a, int* lda, dcomplex* b, int* ldb, dcomplex* c, int* ldc, double* scale, int* info );
426
427// --- Reduction to upper Hessenberg form ---
428
429int F77_sgehrd( int* n, int* ilo, int* ihi, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
430int F77_dgehrd( int* n, int* ilo, int* ihi, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
431int F77_cgehrd( int* n, int* ilo, int* ihi, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
432int F77_zgehrd( int* n, int* ilo, int* ihi, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
433
434int F77_sgehd2( int* n, int* ilo, int* ihi, float* a, int* lda, float* tau, float* work, int* info );
435int F77_dgehd2( int* n, int* ilo, int* ihi, double* a, int* lda, double* tau, double* work, int* info );
436int F77_cgehd2( int* n, int* ilo, int* ihi, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* info );
437int F77_zgehd2( int* n, int* ilo, int* ihi, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* info );
438
439// --- Reduction to tridiagonal form ---
440
441int F77_ssytrd( char* uplo, int* n, float* a, int* lda, float* d, float* e, float* tau, float* work, int* lwork, int* info );
442int F77_dsytrd( char* uplo, int* n, double* a, int* lda, double* d, double* e, double* tau, double* work, int* lwork, int* info );
443int F77_chetrd( char* uplo, int* n, scomplex* a, int* lda, float* d, float* e, scomplex* tau, scomplex* work, int* lwork, int* info );
444int F77_zhetrd( char* uplo, int* n, dcomplex* a, int* lda, double* d, double* e, dcomplex* tau, dcomplex* work, int* lwork, int* info );
445
446int F77_ssytd2( char* uplo, int* n, float* a, int* lda, float* d, float* e, float* tau, int* info );
447int F77_dsytd2( char* uplo, int* n, double* a, int* lda, double* d, double* e, double* tau, int* info );
448int F77_chetd2( char* uplo, int* n, scomplex* a, int* lda, float* d, float* e, scomplex* tau, int* info );
449int F77_zhetd2( char* uplo, int* n, dcomplex* a, int* lda, double* d, double* e, dcomplex* tau, int* info );
450
451// --- Reduction to bidiagonal form ---
452
453int F77_sgebrd( int* m, int* n, float* a, int* lda, float* d, float* e, float* tauq, float* taup, float* work, int* lwork, int* info );
454int F77_dgebrd( int* m, int* n, double* a, int* lda, double* d, double* e, double* tauq, double* taup, double* work, int* lwork, int* info );
455int F77_cgebrd( int* m, int* n, scomplex* a, int* lda, float* d, float* e, scomplex* tauq, scomplex* taup, scomplex* work, int* lwork, int* info );
456int F77_zgebrd( int* m, int* n, dcomplex* a, int* lda, double* d, double* e, dcomplex* tauq, dcomplex* taup, dcomplex* work, int* lwork, int* info );
457
458int F77_sgebd2( int* m, int* n, float* a, int* lda, float* d, float* e, float* tauq, float* taup, float* work, int* info );
459int F77_dgebd2( int* m, int* n, double* a, int* lda, double* d, double* e, double* tauq, double* taup, double* work, int* info );
460int F77_cgebd2( int* m, int* n, scomplex* a, int* lda, float* d, float* e, scomplex* tauq, scomplex* taup, scomplex* work, int* info );
461int F77_zgebd2( int* m, int* n, dcomplex* a, int* lda, double* d, double* e, dcomplex* tauq, dcomplex* taup, dcomplex* work, int* info );
462
463// --- Reduce Hermitian-definite generalized eigenproblem to standard form ---
464
465int F77_ssygst( int* itype, char* uplo, int* n, float* a, int* lda, float* b, int* ldb, int* info );
466int F77_dsygst( int* itype, char* uplo, int* n, double* a, int* lda, double* b, int* ldb, int* info );
467int F77_chegst( int* itype, char* uplo, int* n, scomplex* a, int* lda, scomplex* b, int* ldb, int* info );
468int F77_zhegst( int* itype, char* uplo, int* n, dcomplex* a, int* lda, dcomplex* b, int* ldb, int* info );
469
470int F77_ssygs2( int* itype, char* uplo, int* n, float* a, int* lda, float* b, int* ldb, int* info );
471int F77_dsygs2( int* itype, char* uplo, int* n, double* a, int* lda, double* b, int* ldb, int* info );
472int F77_chegs2( int* itype, char* uplo, int* n, scomplex* a, int* lda, scomplex* b, int* ldb, int* info );
473int F77_zhegs2( int* itype, char* uplo, int* n, dcomplex* a, int* lda, dcomplex* b, int* ldb, int* info );
474
475// --- Accumulate block Householder matrix T (classic) ---
476
477int F77_slarft( char* direct, char* storev, int* n, int* k, float* v, int* ldv, float* tau, float* t, int* ldt );
478int F77_dlarft( char* direct, char* storev, int* n, int* k, double* v, int* ldv, double* tau, double* t, int* ldt );
479int F77_clarft( char* direct, char* storev, int* n, int* k, scomplex* v, int* ldv, scomplex* tau, scomplex* t, int* ldt );
480int F77_zlarft( char* direct, char* storev, int* n, int* k, dcomplex* v, int* ldv, dcomplex* tau, dcomplex* t, int* ldt );
481
482// --- Generate a Householder vector (classic) ---
483
484int F77_slarfg( int* n, float* alpha, float* x, int* incx, float* tau );
485int F77_dlarfg( int* n, double* alpha, double* x, int* incx, double* tau );
486int F77_clarfg( int* n, scomplex* alpha, scomplex* x, int* incx, scomplex* tau );
487int F77_zlarfg( int* n, dcomplex* alpha, dcomplex* x, int* incx, dcomplex* tau );
488
489int F77_slarfgp( int* n, float* alpha, float* x, int* incx, float* tau );
490int F77_dlarfgp( int* n, double* alpha, double* x, int* incx, double* tau );
491int F77_clarfgp( int* n, scomplex* alpha, scomplex* x, int* incx, scomplex* tau );
492int F77_zlarfgp( int* n, dcomplex* alpha, dcomplex* x, int* incx, dcomplex* tau );
493
494// --- Form Q from QR factorization ---
495
496int F77_sorgqr( int* m, int* n, int* k, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
497int F77_dorgqr( int* m, int* n, int* k, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
498int F77_cungqr( int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
499int F77_zungqr( int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
500
501// --- Apply Q or Q' from QR factorization ---
502
503int F77_sormqr( char* side, char* trans, int* m, int* n, int* k, float* a, int* lda, float* tau, float* c, int* ldc, float* work, int* lwork, int* info );
504int F77_dormqr( char* side, char* trans, int* m, int* n, int* k, double* a, int* lda, double* tau, double* c, int* ldc, double* work, int* lwork, int* info );
505int F77_cunmqr( char* side, char* trans, int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* c, int* ldc, scomplex* work, int* lwork, int* info );
506int F77_zunmqr( char* side, char* trans, int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* c, int* ldc, dcomplex* work, int* lwork, int* info );
507
508int F77_sorm2r( char* side, char* trans, int* m, int* n, int* k, float* a, int* lda, float* tau, float* c, int* ldc, float* work, int* info );
509int F77_dorm2r( char* side, char* trans, int* m, int* n, int* k, double* a, int* lda, double* tau, double* c, int* ldc, double* work, int* info );
510int F77_cunm2r( char* side, char* trans, int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* c, int* ldc, scomplex* work, int* info );
511int F77_zunm2r( char* side, char* trans, int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* c, int* ldc, dcomplex* work, int* info );
512
513// --- Form Q from LQ factorization ---
514
515int F77_sorglq( int* m, int* n, int* k, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
516int F77_dorglq( int* m, int* n, int* k, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
517int F77_cunglq( int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
518int F77_zunglq( int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
519
520// --- Apply Q or Q' from LQ factorization ---
521
522int F77_sormlq( char* side, char* trans, int* m, int* n, int* k, float* a, int* lda, float* tau, float* c, int* ldc, float* work, int* lwork, int* info );
523int F77_dormlq( char* side, char* trans, int* m, int* n, int* k, double* a, int* lda, double* tau, double* c, int* ldc, double* work, int* lwork, int* info );
524int F77_cunmlq( char* side, char* trans, int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* c, int* ldc, scomplex* work, int* lwork, int* info );
525int F77_zunmlq( char* side, char* trans, int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* c, int* ldc, dcomplex* work, int* lwork, int* info );
526
527int F77_sorml2( char* side, char* trans, int* m, int* n, int* k, float* a, int* lda, float* tau, float* c, int* ldc, float* work, int* info );
528int F77_dorml2( char* side, char* trans, int* m, int* n, int* k, double* a, int* lda, double* tau, double* c, int* ldc, double* work, int* info );
529int F77_cunml2( char* side, char* trans, int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* c, int* ldc, scomplex* work, int* info );
530int F77_zunml2( char* side, char* trans, int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* c, int* ldc, dcomplex* work, int* info );
531
532// --- Form Q from tridiagonal reduction ---
533
534int F77_sorgtr( char* uplo, int* m, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
535int F77_dorgtr( char* uplo, int* m, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
536int F77_cungtr( char* uplo, int* m, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
537int F77_zungtr( char* uplo, int* m, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
538
539// --- Apply Q or Q' from tridiagonal reduction ---
540
541int F77_sormtr( char* side, char* uplo, char* trans, int* m, int* n, float* a, int* lda, float* tau, float* c, int* ldc, float* work, int* lwork, int* info );
542int F77_dormtr( char* side, char* uplo, char* trans, int* m, int* n, double* a, int* lda, double* tau, double* c, int* ldc, double* work, int* lwork, int* info );
543int F77_cunmtr( char* side, char* uplo, char* trans, int* m, int* n, scomplex* a, int* lda, scomplex* tau, scomplex* c, int* ldc, scomplex* work, int* lwork, int* info );
544int F77_zunmtr( char* side, char* uplo, char* trans, int* m, int* n, dcomplex* a, int* lda, dcomplex* tau, dcomplex* c, int* ldc, dcomplex* work, int* lwork, int* info );
545
546// --- Form Q from bidiagonal reduction ---
547
548int F77_sorgbr( char* vect, int* m, int* n, int* k, float* a, int* lda, float* tau, float* work, int* lwork, int* info );
549int F77_dorgbr( char* vect, int* m, int* n, int* k, double* a, int* lda, double* tau, double* work, int* lwork, int* info );
550int F77_cungbr( char* vect, int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* work, int* lwork, int* info );
551int F77_zungbr( char* vect, int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* work, int* lwork, int* info );
552
553// --- Apply Q or Q' from bidiagonal reduction ---
554
555int F77_sormbr( char* vect, char* side, char* trans, int* m, int* n, int* k, float* a, int* lda, float* tau, float* c, int* ldc, float* work, int* lwork, int* info );
556int F77_dormbr( char* vect, char* side, char* trans, int* m, int* n, int* k, double* a, int* lda, double* tau, double* c, int* ldc, double* work, int* lwork, int* info );
557int F77_cunmbr( char* vect, char* side, char* trans, int* m, int* n, int* k, scomplex* a, int* lda, scomplex* tau, scomplex* c, int* ldc, scomplex* work, int* lwork, int* info );
558int F77_zunmbr( char* vect, char* side, char* trans, int* m, int* n, int* k, dcomplex* a, int* lda, dcomplex* tau, dcomplex* c, int* ldc, dcomplex* work, int* lwork, int* info );
559
560// --- Tridiagonal QR algorithm ---
561
562int F77_ssteqr( char* jobz, int* n, float* d, float* e, float* z, int* ldz, float* work, int* info );
563int F77_dsteqr( char* jobz, int* n, double* d, double* e, double* z, int* ldz, double* work, int* info );
564int F77_csteqr( char* jobz, int* n, float* d, float* e, scomplex* z, int* ldz, float* work, int* info );
565int F77_zsteqr( char* jobz, int* n, double* d, double* e, dcomplex* z, int* ldz, double* work, int* info );
566
567// --- Tridiagonal divide-and-conquer algorithm ---
568
569int F77_sstedc( char* compz, int* n, float* d, float* e, float* z, int* ldz, float* work, int* lwork, int* iwork, int* liwork, int* info );
570int F77_dstedc( char* compz, int* n, double* d, double* e, double* z, int* ldz, double* work, int* lwork, int* iwork, int* liwork, int* info );
571int F77_cstedc( char* compz, int* n, float* d, float* e, scomplex* z, int* ldz, scomplex* work, int* lwork, float* rwork, int* lrwork, int* iwork, int* liwork, int* info );
572int F77_zstedc( char* compz, int* n, double* d, double* e, dcomplex* z, int* ldz, dcomplex* work, int* lwork, double* rwork, int* lrwork, int* iwork, int* liwork, int* info );
573
574// --- Tridiagonal MRRR algorithm ---
575
576int F77_sstemr( char* jobz, char* range, int* n, float* d, float* e, int* vl, int* vu, int* il, int* iu, int* m, float* w, float* z, int* ldz, int* nzc, int* isuppz, int* tryrac, float* work, int* lwork, int* iwork, int* liwork, int* info );
577int F77_dstemr( char* jobz, char* range, int* n, double* d, double* e, int* vl, int* vu, int* il, int* iu, int* m, double* w, double* z, int* ldz, int* nzc, int* isuppz, int* tryrac, double* work, int* lwork, int* iwork, int* liwork, int* info );
578int F77_cstemr( char* jobz, char* range, int* n, float* d, float* e, int* vl, int* vu, int* il, int* iu, int* m, float* w, scomplex* z, int* ldz, int* nzc, int* isuppz, int* tryrac, float* work, int* lwork, int* iwork, int* liwork, int* info );
579int F77_zstemr( char* jobz, char* range, int* n, double* d, double* e, int* vl, int* vu, int* il, int* iu, int* m, double* w, dcomplex* z, int* ldz, int* nzc, int* isuppz, int* tryrac, double* work, int* lwork, int* iwork, int* liwork, int* info );
580
581// --- Hermitian eigenvalue decomposition (QR algorithm) ---
582
583int F77_ssyev( char* jobz, char* uplo, int* n, float* a, int* lda, float* w, float* work, int* lwork, float* rwork, int* info );
584int F77_dsyev( char* jobz, char* uplo, int* n, double* a, int* lda, double* w, double* work, int* lwork, double* rwork, int* info );
585int F77_cheev( char* jobz, char* uplo, int* n, scomplex* a, int* lda, float* w, scomplex* work, int* lwork, float* rwork, int* info );
586int F77_zheev( char* jobz, char* uplo, int* n, dcomplex* a, int* lda, double* w, dcomplex* work, int* lwork, double* rwork, int* info );
587
588// --- Hermitian eigenvalue decomposition (divide-and-conquer) ---
589
590int F77_ssyevd( char* jobz, char* uplo, int* n, float* a, int* lda, float* w, float* work, int* lwork, int* iwork, int* liwork, int* info );
591int F77_dsyevd( char* jobz, char* uplo, int* n, double* a, int* lda, double* w, double* work, int* lwork, int* iwork, int* liwork, int* info );
592int F77_cheevd( char* jobz, char* uplo, int* n, scomplex* a, int* lda, float* w, scomplex* work, int* lwork, float* rwork, int* lrwork, int* iwork, int* liwork, int* info );
593int F77_zheevd( char* jobz, char* uplo, int* n, dcomplex* a, int* lda, double* w, dcomplex* work, int* lwork, double* rwork, int* lrwork, int* iwork, int* liwork, int* info );
594
595// --- Hermitian eigenvalue decomposition (MRRR) ---
596
597int F77_ssyevr( char* jobz, char* range, char* uplo, int* n, float* a, int* lda, float* vl, float* vu, int* il, int* iu, float* abstol, int* m, float* w, float* z, int* ldz, int* isuppz, float* work, int* lwork, int* iwork, int* liwork, int* info );
598int F77_dsyevr( char* jobz, char* range, char* uplo, int* n, double* a, int* lda, double* vl, double* vu, int* il, int* iu, double* abstol, int* m, double* w, double* z, int* ldz, int* isuppz, double* work, int* lwork, int* iwork, int* liwork, int* info );
599int F77_cheevr( char* jobz, char* range, char* uplo, int* n, scomplex* a, int* lda, float* vl, float* vu, int* il, int* iu, float* abstol, int* m, float* w, scomplex* z, int* ldz, int* isuppz, scomplex* work, int* lwork, float* rwork, int* lrwork, int* iwork, int* liwork, int* info );
600int F77_zheevr( char* jobz, char* range, char* uplo, int* n, dcomplex* a, int* lda, double* vl, double* vu, int* il, int* iu, double* abstol, int* m, double* w, dcomplex* z, int* ldz, int* isuppz, dcomplex* work, int* lwork, double* rwork, int* lrwork, int* iwork, int* liwork, int* info );
601
602// --- Bidiagonal QR algorithm ---
603
604int F77_sbdsqr( char* uplo, int* n, int* ncvt, int* nru, int* ncc, float* d, float* e, float* vt, int* ldvt, float* u, int* ldu, float* c, int* ldc, float* rwork, int* info );
605int F77_dbdsqr( char* uplo, int* n, int* ncvt, int* nru, int* ncc, double* d, double* e, double* vt, int* ldvt, double* u, int* ldu, double* c, int* ldc, double* rwork, int* info );
606int F77_cbdsqr( char* uplo, int* n, int* ncvt, int* nru, int* ncc, float* d, float* e, scomplex* vt, int* ldvt, scomplex* u, int* ldu, scomplex* c, int* ldc, float* rwork, int* info );
607int F77_zbdsqr( char* uplo, int* n, int* ncvt, int* nru, int* ncc, double* d, double* e, dcomplex* vt, int* ldvt, dcomplex* u, int* ldu, dcomplex* c, int* ldc, double* rwork, int* info );
608
609// --- Bidiagonal divide-and-conquor algorithm ---
610
611int F77_sbdsdc( char* uplo, char* compq, int* n, float* d, float* e, float* u, int* ldu, float* vt, int* ldvt, float* q, float* iq, float* work, int* iwork, int* info );
612int F77_dbdsdc( char* uplo, char* compq, int* n, double* d, double* e, double* u, int* ldu, double* vt, int* ldvt, double* q, double* iq, double* work, int* iwork, int* info );
613
614// --- General matrix singular value decomposition (QR algorithm) ---
615
616int F77_sgesvd( char* jobu, char* jobv, int* m, int* n, float* a, int* lda, float* s, float* u, int* ldu, float* vt, int* ldvt, float* work, int* lwork, int* info );
617int F77_dgesvd( char* jobu, char* jobv, int* m, int* n, double* a, int* lda, double* s, double* u, int* ldu, double* vt, int* ldvt, double* work, int* lwork, int* info );
618int F77_cgesvd( char* jobu, char* jobv, int* m, int* n, scomplex* a, int* lda, float* s, scomplex* u, int* ldu, scomplex* vt, int* ldvt, scomplex* work, int* lwork, float* rwork, int* info );
619int F77_zgesvd( char* jobu, char* jobv, int* m, int* n, dcomplex* a, int* lda, double* s, dcomplex* u, int* ldu, dcomplex* vt, int* ldvt, dcomplex* work, int* lwork, double* rwork, int* info );
620
621// --- General matrix singular value decomposition (divide-and-conquer) ---
622
623int F77_sgesdd( char* jobz, int* m, int* n, float* a, int* lda, float* s, float* u, int* ldu, float* vt, int* ldvt, float* work, int* lwork, int* iwork, int* info );
624int F77_dgesdd( char* jobz, int* m, int* n, double* a, int* lda, double* s, double* u, int* ldu, double* vt, int* ldvt, double* work, int* lwork, int* iwork, int* info );
625int F77_cgesdd( char* jobz, int* m, int* n, scomplex* a, int* lda, float* s, scomplex* u, int* ldu, scomplex* vt, int* ldvt, scomplex* work, int* lwork, float* rwork, int* iwork, int* info );
626int F77_zgesdd( char* jobz, int* m, int* n, dcomplex* a, int* lda, double* s, dcomplex* u, int* ldu, dcomplex* vt, int* ldvt, dcomplex* work, int* lwork, double* rwork, int* iwork, int* info );
627
628// --- Swap rows ---
629
630int F77_slaswp( int* n, float* a, int* lda, int* k1, int* k2, int* ipiv, int* incx );
631int F77_dlaswp( int* n, double* a, int* lda, int* k1, int* k2, int* ipiv, int* incx );
632int F77_claswp( int* n, scomplex* a, int* lda, int* k1, int* k2, int* ipiv, int* incx );
633int F77_zlaswp( int* n, dcomplex* a, int* lda, int* k1, int* k2, int* ipiv, int* incx );
634
635// --- Initialize a matrix ---
636
637int F77_slaset( char* uplo, int* m, int* n, float* alpha, float* beta, float* a, int* lda );
638int F77_dlaset( char* uplo, int* m, int* n, double* alpha, double* beta, double* a, int* lda );
639int F77_claset( char* uplo, int* m, int* n, scomplex* alpha, scomplex* beta, scomplex* a, int* lda );
640int F77_zlaset( char* uplo, int* m, int* n, dcomplex* alpha, dcomplex* beta, dcomplex* a, int* lda );
641
int F77_ssteqr(char *jobz, int *n, float *d, float *e, float *z, int *ldz, float *work, int *info)
int F77_ssytrd(char *uplo, int *n, float *a, int *lda, float *d, float *e, float *tau, float *work, int *lwork, int *info)
int F77_zstedc(char *compz, int *n, double *d, double *e, dcomplex *z, int *ldz, dcomplex *work, int *lwork, double *rwork, int *lrwork, int *iwork, int *liwork, int *info)
int F77_slauu2(char *uplo, int *n, float *a, int *lda, int *info)
int F77_zlarfgp(int *n, dcomplex *alpha, dcomplex *x, int *incx, dcomplex *tau)
int F77_dgebd2(int *m, int *n, double *a, int *lda, double *d, double *e, double *tauq, double *taup, double *work, int *info)
int F77_ssygst(int *itype, char *uplo, int *n, float *a, int *lda, float *b, int *ldb, int *info)
int F77_sorm2r(char *side, char *trans, int *m, int *n, int *k, float *a, int *lda, float *tau, float *c, int *ldc, float *work, int *info)
int F77_cgetf2(int *m, int *n, scomplex *a, int *lda, int *ipiv, int *info)
int F77_zunml2(char *side, char *trans, int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *c, int *ldc, dcomplex *work, int *info)
int F77_ctrsyl(char *transa, char *transb, int *isgn, int *m, int *n, scomplex *a, int *lda, scomplex *b, int *ldb, scomplex *c, int *ldc, float *scale, int *info)
int F77_sorglq(int *m, int *n, int *k, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_dpotf2(char *uplo, int *n, double *a, int *lda, int *info)
int F77_zheevr(char *jobz, char *range, char *uplo, int *n, dcomplex *a, int *lda, double *vl, double *vu, int *il, int *iu, double *abstol, int *m, double *w, dcomplex *z, int *ldz, int *isuppz, dcomplex *work, int *lwork, double *rwork, int *lrwork, int *iwork, int *liwork, int *info)
int F77_zgeqp3(int *m, int *n, dcomplex *a, int *lda, int *jpvt, dcomplex *tau, dcomplex *work, int *lwork, double *rwork, int *info)
int F77_zlaswp(int *n, dcomplex *a, int *lda, int *k1, int *k2, int *ipiv, int *incx)
int F77_claswp(int *n, scomplex *a, int *lda, int *k1, int *k2, int *ipiv, int *incx)
int F77_ctrtri(char *uplo, char *diag, int *n, scomplex *a, int *lda, int *info)
int F77_zgetrf(int *m, int *n, dcomplex *a, int *lda, int *ipiv, int *info)
int F77_sgelsd(int *m, int *n, int *nrhs, float *a, int *lda, float *b, int *ldb, float *s, float *rcond, int *rank, float *work, int *lwork, int *iwork, int *info)
int F77_sbdsdc(char *uplo, char *compq, int *n, float *d, float *e, float *u, int *ldu, float *vt, int *ldvt, float *q, float *iq, float *work, int *iwork, int *info)
int F77_cunmtr(char *side, char *uplo, char *trans, int *m, int *n, scomplex *a, int *lda, scomplex *tau, scomplex *c, int *ldc, scomplex *work, int *lwork, int *info)
int F77_zgeqpf(int *m, int *n, dcomplex *a, int *lda, int *jpvt, dcomplex *tau, dcomplex *work, double *rwork, int *info)
int F77_dgelsd(int *m, int *n, int *nrhs, double *a, int *lda, double *b, int *ldb, double *s, double *rcond, int *rank, double *work, int *lwork, int *iwork, int *info)
int F77_dlauu2(char *uplo, int *n, double *a, int *lda, int *info)
int F77_dormqr(char *side, char *trans, int *m, int *n, int *k, double *a, int *lda, double *tau, double *c, int *ldc, double *work, int *lwork, int *info)
int F77_cgeqr2(int *m, int *n, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *info)
int F77_dorgqr(int *m, int *n, int *k, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_dsyevr(char *jobz, char *range, char *uplo, int *n, double *a, int *lda, double *vl, double *vu, int *il, int *iu, double *abstol, int *m, double *w, double *z, int *ldz, int *isuppz, double *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_cgetrf(int *m, int *n, scomplex *a, int *lda, int *ipiv, int *info)
int F77_spotri(char *uplo, int *n, float *buff_A, int *ldim_A, int *info)
int F77_sgesdd(char *jobz, int *m, int *n, float *a, int *lda, float *s, float *u, int *ldu, float *vt, int *ldvt, float *work, int *lwork, int *iwork, int *info)
int F77_dsygs2(int *itype, char *uplo, int *n, double *a, int *lda, double *b, int *ldb, int *info)
int F77_zgehd2(int *n, int *ilo, int *ihi, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *info)
int F77_cheevd(char *jobz, char *uplo, int *n, scomplex *a, int *lda, float *w, scomplex *work, int *lwork, float *rwork, int *lrwork, int *iwork, int *liwork, int *info)
int F77_zhetrd(char *uplo, int *n, dcomplex *a, int *lda, double *d, double *e, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_cgeqrf(int *m, int *n, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_dlauum(char *uplo, int *n, double *a, int *lda, int *info)
int F77_cbdsqr(char *uplo, int *n, int *ncvt, int *nru, int *ncc, float *d, float *e, scomplex *vt, int *ldvt, scomplex *u, int *ldu, scomplex *c, int *ldc, float *rwork, int *info)
int F77_cgebd2(int *m, int *n, scomplex *a, int *lda, float *d, float *e, scomplex *tauq, scomplex *taup, scomplex *work, int *info)
int F77_dorm2r(char *side, char *trans, int *m, int *n, int *k, double *a, int *lda, double *tau, double *c, int *ldc, double *work, int *info)
int F77_dormtr(char *side, char *uplo, char *trans, int *m, int *n, double *a, int *lda, double *tau, double *c, int *ldc, double *work, int *lwork, int *info)
int F77_cungbr(char *vect, int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_dgeqp3(int *m, int *n, double *a, int *lda, int *jpvt, double *tau, double *work, int *lwork, int *info)
int F77_dgeqr2(int *m, int *n, double *a, int *lda, double *tau, double *work, int *info)
int F77_chetrd(char *uplo, int *n, scomplex *a, int *lda, float *d, float *e, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_zbdsqr(char *uplo, int *n, int *ncvt, int *nru, int *ncc, double *d, double *e, dcomplex *vt, int *ldvt, dcomplex *u, int *ldu, dcomplex *c, int *ldc, double *rwork, int *info)
int F77_zheev(char *jobz, char *uplo, int *n, dcomplex *a, int *lda, double *w, dcomplex *work, int *lwork, double *rwork, int *info)
int F77_dorgbr(char *vect, int *m, int *n, int *k, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_cgesvd(char *jobu, char *jobv, int *m, int *n, scomplex *a, int *lda, float *s, scomplex *u, int *ldu, scomplex *vt, int *ldvt, scomplex *work, int *lwork, float *rwork, int *info)
int F77_strtri(char *uplo, char *diag, int *n, float *a, int *lda, int *info)
int F77_cgeqp3(int *m, int *n, scomplex *a, int *lda, int *jpvt, scomplex *tau, scomplex *work, int *lwork, float *rwork, int *info)
int F77_zgehrd(int *n, int *ilo, int *ihi, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_zgesvd(char *jobu, char *jobv, int *m, int *n, dcomplex *a, int *lda, double *s, dcomplex *u, int *ldu, dcomplex *vt, int *ldvt, dcomplex *work, int *lwork, double *rwork, int *info)
int F77_zpotf2(char *uplo, int *n, dcomplex *a, int *lda, int *info)
int F77_dlaswp(int *n, double *a, int *lda, int *k1, int *k2, int *ipiv, int *incx)
int F77_zhegst(int *itype, char *uplo, int *n, dcomplex *a, int *lda, dcomplex *b, int *ldb, int *info)
int F77_sgetf2(int *m, int *n, float *a, int *lda, int *ipiv, int *info)
int F77_sgeqrf(int *m, int *n, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_cpotf2(char *uplo, int *n, scomplex *a, int *lda, int *info)
int F77_cgelsd(int *m, int *n, int *nrhs, scomplex *a, int *lda, scomplex *b, int *ldb, float *s, float *rcond, int *rank, scomplex *work, int *lwork, float *rwork, int *iwork, int *info)
int F77_sbdsqr(char *uplo, int *n, int *ncvt, int *nru, int *ncc, float *d, float *e, float *vt, int *ldvt, float *u, int *ldu, float *c, int *ldc, float *rwork, int *info)
int F77_zlarfg(int *n, dcomplex *alpha, dcomplex *x, int *incx, dcomplex *tau)
int F77_cgelqf(int *m, int *n, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_dgehrd(int *n, int *ilo, int *ihi, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_chegs2(int *itype, char *uplo, int *n, scomplex *a, int *lda, scomplex *b, int *ldb, int *info)
int F77_zungbr(char *vect, int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_zgetf2(int *m, int *n, dcomplex *a, int *lda, int *ipiv, int *info)
int F77_dorglq(int *m, int *n, int *k, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_ztrsyl(char *transa, char *transb, int *isgn, int *m, int *n, dcomplex *a, int *lda, dcomplex *b, int *ldb, dcomplex *c, int *ldc, double *scale, int *info)
int F77_sgesvd(char *jobu, char *jobv, int *m, int *n, float *a, int *lda, float *s, float *u, int *ldu, float *vt, int *ldvt, float *work, int *lwork, int *info)
int F77_cunmbr(char *vect, char *side, char *trans, int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *c, int *ldc, scomplex *work, int *lwork, int *info)
int F77_sormbr(char *vect, char *side, char *trans, int *m, int *n, int *k, float *a, int *lda, float *tau, float *c, int *ldc, float *work, int *lwork, int *info)
int F77_chegst(int *itype, char *uplo, int *n, scomplex *a, int *lda, scomplex *b, int *ldb, int *info)
int F77_dpotrf(char *uplo, int *n, double *a, int *lda, int *info)
int F77_zheevd(char *jobz, char *uplo, int *n, dcomplex *a, int *lda, double *w, dcomplex *work, int *lwork, double *rwork, int *lrwork, int *iwork, int *liwork, int *info)
int F77_dgetrf(int *m, int *n, double *a, int *lda, int *ipiv, int *info)
int F77_sstemr(char *jobz, char *range, int *n, float *d, float *e, int *vl, int *vu, int *il, int *iu, int *m, float *w, float *z, int *ldz, int *nzc, int *isuppz, int *tryrac, float *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_dgetf2(int *m, int *n, double *a, int *lda, int *ipiv, int *info)
int F77_clauum(char *uplo, int *n, scomplex *a, int *lda, int *info)
int F77_csteqr(char *jobz, int *n, float *d, float *e, scomplex *z, int *ldz, float *work, int *info)
int F77_chetd2(char *uplo, int *n, scomplex *a, int *lda, float *d, float *e, scomplex *tau, int *info)
int F77_sgeqr2(int *m, int *n, float *a, int *lda, float *tau, float *work, int *info)
int F77_sgehd2(int *n, int *ilo, int *ihi, float *a, int *lda, float *tau, float *work, int *info)
int F77_dgesvd(char *jobu, char *jobv, int *m, int *n, double *a, int *lda, double *s, double *u, int *ldu, double *vt, int *ldvt, double *work, int *lwork, int *info)
int F77_sgelss(int *m, int *n, int *nrhs, float *a, int *lda, float *b, int *ldb, float *s, float *rcond, int *rank, float *work, int *lwork, int *info)
int F77_dorgtr(char *uplo, int *m, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_cgehrd(int *n, int *ilo, int *ihi, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_strti2(char *uplo, char *diag, int *n, float *a, int *lda, int *info)
int F77_ctrti2(char *uplo, char *diag, int *n, scomplex *a, int *lda, int *info)
int F77_ssyevr(char *jobz, char *range, char *uplo, int *n, float *a, int *lda, float *vl, float *vu, int *il, int *iu, float *abstol, int *m, float *w, float *z, int *ldz, int *isuppz, float *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_slarfgp(int *n, float *alpha, float *x, int *incx, float *tau)
int F77_dsytd2(char *uplo, int *n, double *a, int *lda, double *d, double *e, double *tau, int *info)
int F77_zstemr(char *jobz, char *range, int *n, double *d, double *e, int *vl, int *vu, int *il, int *iu, int *m, double *w, dcomplex *z, int *ldz, int *nzc, int *isuppz, int *tryrac, double *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_dorml2(char *side, char *trans, int *m, int *n, int *k, double *a, int *lda, double *tau, double *c, int *ldc, double *work, int *info)
int F77_ssygs2(int *itype, char *uplo, int *n, float *a, int *lda, float *b, int *ldb, int *info)
int F77_dlarft(char *direct, char *storev, int *n, int *k, double *v, int *ldv, double *tau, double *t, int *ldt)
int F77_cunglq(int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_sgetrf(int *m, int *n, float *a, int *lda, int *ipiv, int *info)
int F77_sorml2(char *side, char *trans, int *m, int *n, int *k, float *a, int *lda, float *tau, float *c, int *ldc, float *work, int *info)
int F77_slaset(char *uplo, int *m, int *n, float *alpha, float *beta, float *a, int *lda)
int F77_zunmtr(char *side, char *uplo, char *trans, int *m, int *n, dcomplex *a, int *lda, dcomplex *tau, dcomplex *c, int *ldc, dcomplex *work, int *lwork, int *info)
int F77_ztrti2(char *uplo, char *diag, int *n, dcomplex *a, int *lda, int *info)
int F77_dsteqr(char *jobz, int *n, double *d, double *e, double *z, int *ldz, double *work, int *info)
int F77_dtrsyl(char *transa, char *transb, int *isgn, int *m, int *n, double *a, int *lda, double *b, int *ldb, double *c, int *ldc, double *scale, int *info)
int F77_zgesdd(char *jobz, int *m, int *n, dcomplex *a, int *lda, double *s, dcomplex *u, int *ldu, dcomplex *vt, int *ldvt, dcomplex *work, int *lwork, double *rwork, int *iwork, int *info)
int F77_slaswp(int *n, float *a, int *lda, int *k1, int *k2, int *ipiv, int *incx)
int F77_dstemr(char *jobz, char *range, int *n, double *d, double *e, int *vl, int *vu, int *il, int *iu, int *m, double *w, double *z, int *ldz, int *nzc, int *isuppz, int *tryrac, double *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_slarft(char *direct, char *storev, int *n, int *k, float *v, int *ldv, float *tau, float *t, int *ldt)
int F77_sgelq2(int *m, int *n, float *a, int *lda, float *tau, float *work, int *info)
int F77_cgehd2(int *n, int *ilo, int *ihi, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *info)
int F77_dbdsdc(char *uplo, char *compq, int *n, double *d, double *e, double *u, int *ldu, double *vt, int *ldvt, double *q, double *iq, double *work, int *iwork, int *info)
int F77_cpotri(char *uplo, int *n, scomplex *buff_A, int *ldim_A, int *info)
int F77_dlaset(char *uplo, int *m, int *n, double *alpha, double *beta, double *a, int *lda)
int F77_sgebd2(int *m, int *n, float *a, int *lda, float *d, float *e, float *tauq, float *taup, float *work, int *info)
int F77_sorgbr(char *vect, int *m, int *n, int *k, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_cungqr(int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_zgebd2(int *m, int *n, dcomplex *a, int *lda, double *d, double *e, dcomplex *tauq, dcomplex *taup, dcomplex *work, int *info)
int F77_zgelqf(int *m, int *n, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_cpotrf(char *uplo, int *n, scomplex *a, int *lda, int *info)
int F77_cgesdd(char *jobz, int *m, int *n, scomplex *a, int *lda, float *s, scomplex *u, int *ldu, scomplex *vt, int *ldvt, scomplex *work, int *lwork, float *rwork, int *iwork, int *info)
int F77_cgebrd(int *m, int *n, scomplex *a, int *lda, float *d, float *e, scomplex *tauq, scomplex *taup, scomplex *work, int *lwork, int *info)
int F77_ztrtri(char *uplo, char *diag, int *n, dcomplex *a, int *lda, int *info)
int F77_sstedc(char *compz, int *n, float *d, float *e, float *z, int *ldz, float *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_dlarfg(int *n, double *alpha, double *x, int *incx, double *tau)
int F77_dlarfgp(int *n, double *alpha, double *x, int *incx, double *tau)
int F77_cunmlq(char *side, char *trans, int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *c, int *ldc, scomplex *work, int *lwork, int *info)
int F77_zungqr(int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_sgehrd(int *n, int *ilo, int *ihi, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_ssyevd(char *jobz, char *uplo, int *n, float *a, int *lda, float *w, float *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_sgeqp3(int *m, int *n, float *a, int *lda, int *jpvt, float *tau, float *work, int *lwork, int *info)
int F77_slarfg(int *n, float *alpha, float *x, int *incx, float *tau)
int F77_sorgtr(char *uplo, int *m, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_dgelqf(int *m, int *n, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_sormqr(char *side, char *trans, int *m, int *n, int *k, float *a, int *lda, float *tau, float *c, int *ldc, float *work, int *lwork, int *info)
int F77_zgebrd(int *m, int *n, dcomplex *a, int *lda, double *d, double *e, dcomplex *tauq, dcomplex *taup, dcomplex *work, int *lwork, int *info)
int F77_strsyl(char *transa, char *transb, int *isgn, int *m, int *n, float *a, int *lda, float *b, int *ldb, float *c, int *ldc, float *scale, int *info)
int F77_clarft(char *direct, char *storev, int *n, int *k, scomplex *v, int *ldv, scomplex *tau, scomplex *t, int *ldt)
int F77_zunmlq(char *side, char *trans, int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *c, int *ldc, dcomplex *work, int *lwork, int *info)
int F77_cunml2(char *side, char *trans, int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *c, int *ldc, scomplex *work, int *info)
int F77_zungtr(char *uplo, int *m, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_dbdsqr(char *uplo, int *n, int *ncvt, int *nru, int *ncc, double *d, double *e, double *vt, int *ldvt, double *u, int *ldu, double *c, int *ldc, double *rwork, int *info)
int F77_zgeqrf(int *m, int *n, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_cunm2r(char *side, char *trans, int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *c, int *ldc, scomplex *work, int *info)
int F77_zlauum(char *uplo, int *n, dcomplex *a, int *lda, int *info)
int F77_dtrtri(char *uplo, char *diag, int *n, double *a, int *lda, int *info)
int F77_cstemr(char *jobz, char *range, int *n, float *d, float *e, int *vl, int *vu, int *il, int *iu, int *m, float *w, scomplex *z, int *ldz, int *nzc, int *isuppz, int *tryrac, float *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_dormbr(char *vect, char *side, char *trans, int *m, int *n, int *k, double *a, int *lda, double *tau, double *c, int *ldc, double *work, int *lwork, int *info)
int F77_sormtr(char *side, char *uplo, char *trans, int *m, int *n, float *a, int *lda, float *tau, float *c, int *ldc, float *work, int *lwork, int *info)
int F77_clauu2(char *uplo, int *n, scomplex *a, int *lda, int *info)
int F77_sgebrd(int *m, int *n, float *a, int *lda, float *d, float *e, float *tauq, float *taup, float *work, int *lwork, int *info)
int F77_zgelq2(int *m, int *n, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *info)
int F77_zhegs2(int *itype, char *uplo, int *n, dcomplex *a, int *lda, dcomplex *b, int *ldb, int *info)
int F77_cheevr(char *jobz, char *range, char *uplo, int *n, scomplex *a, int *lda, float *vl, float *vu, int *il, int *iu, float *abstol, int *m, float *w, scomplex *z, int *ldz, int *isuppz, scomplex *work, int *lwork, float *rwork, int *lrwork, int *iwork, int *liwork, int *info)
int F77_dsygst(int *itype, char *uplo, int *n, double *a, int *lda, double *b, int *ldb, int *info)
int F77_dgehd2(int *n, int *ilo, int *ihi, double *a, int *lda, double *tau, double *work, int *info)
int F77_dpotri(char *uplo, int *n, double *buff_A, int *ldim_A, int *info)
int F77_dgelq2(int *m, int *n, double *a, int *lda, double *tau, double *work, int *info)
int F77_sorgqr(int *m, int *n, int *k, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_zgelsd(int *m, int *n, int *nrhs, dcomplex *a, int *lda, dcomplex *b, int *ldb, double *s, double *rcond, int *rank, dcomplex *work, int *lwork, double *rwork, int *iwork, int *info)
int F77_clarfgp(int *n, scomplex *alpha, scomplex *x, int *incx, scomplex *tau)
int F77_dgebrd(int *m, int *n, double *a, int *lda, double *d, double *e, double *tauq, double *taup, double *work, int *lwork, int *info)
int F77_cungtr(char *uplo, int *m, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *lwork, int *info)
int F77_dtrti2(char *uplo, char *diag, int *n, double *a, int *lda, int *info)
int F77_sgeqpf(int *m, int *n, float *a, int *lda, int *jpvt, float *tau, float *work, int *info)
int F77_zhetd2(char *uplo, int *n, dcomplex *a, int *lda, double *d, double *e, dcomplex *tau, int *info)
int F77_claset(char *uplo, int *m, int *n, scomplex *alpha, scomplex *beta, scomplex *a, int *lda)
int F77_cstedc(char *compz, int *n, float *d, float *e, scomplex *z, int *ldz, scomplex *work, int *lwork, float *rwork, int *lrwork, int *iwork, int *liwork, int *info)
int F77_dgesdd(char *jobz, int *m, int *n, double *a, int *lda, double *s, double *u, int *ldu, double *vt, int *ldvt, double *work, int *lwork, int *iwork, int *info)
int F77_cgelq2(int *m, int *n, scomplex *a, int *lda, scomplex *tau, scomplex *work, int *info)
int F77_zunm2r(char *side, char *trans, int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *c, int *ldc, dcomplex *work, int *info)
int F77_cheev(char *jobz, char *uplo, int *n, scomplex *a, int *lda, float *w, scomplex *work, int *lwork, float *rwork, int *info)
int F77_dgeqpf(int *m, int *n, double *a, int *lda, int *jpvt, double *tau, double *work, int *info)
int F77_zlaset(char *uplo, int *m, int *n, dcomplex *alpha, dcomplex *beta, dcomplex *a, int *lda)
int F77_zgelss(int *m, int *n, int *nrhs, dcomplex *a, int *lda, dcomplex *b, int *ldb, double *s, double *rcond, int *rank, dcomplex *work, int *lwork, double *rwork, int *info)
int F77_dsyev(char *jobz, char *uplo, int *n, double *a, int *lda, double *w, double *work, int *lwork, double *rwork, int *info)
int F77_ssytd2(char *uplo, int *n, float *a, int *lda, float *d, float *e, float *tau, int *info)
int F77_cgelss(int *m, int *n, int *nrhs, scomplex *a, int *lda, scomplex *b, int *ldb, float *s, float *rcond, int *rank, scomplex *work, int *lwork, float *rwork, int *info)
int F77_zunmbr(char *vect, char *side, char *trans, int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *c, int *ldc, dcomplex *work, int *lwork, int *info)
int F77_dgelss(int *m, int *n, int *nrhs, double *a, int *lda, double *b, int *ldb, double *s, double *rcond, int *rank, double *work, int *lwork, int *info)
int F77_zunglq(int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *lwork, int *info)
int F77_sgelqf(int *m, int *n, float *a, int *lda, float *tau, float *work, int *lwork, int *info)
int F77_zunmqr(char *side, char *trans, int *m, int *n, int *k, dcomplex *a, int *lda, dcomplex *tau, dcomplex *c, int *ldc, dcomplex *work, int *lwork, int *info)
int F77_spotrf(char *uplo, int *n, float *a, int *lda, int *info)
int F77_clarfg(int *n, scomplex *alpha, scomplex *x, int *incx, scomplex *tau)
int F77_dsyevd(char *jobz, char *uplo, int *n, double *a, int *lda, double *w, double *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_dstedc(char *compz, int *n, double *d, double *e, double *z, int *ldz, double *work, int *lwork, int *iwork, int *liwork, int *info)
int F77_zpotrf(char *uplo, int *n, dcomplex *a, int *lda, int *info)
int F77_zlauu2(char *uplo, int *n, dcomplex *a, int *lda, int *info)
int F77_cgeqpf(int *m, int *n, scomplex *a, int *lda, int *jpvt, scomplex *tau, scomplex *work, float *rwork, int *info)
int F77_slauum(char *uplo, int *n, float *a, int *lda, int *info)
int F77_zlarft(char *direct, char *storev, int *n, int *k, dcomplex *v, int *ldv, dcomplex *tau, dcomplex *t, int *ldt)
int F77_dgeqrf(int *m, int *n, double *a, int *lda, double *tau, double *work, int *lwork, int *info)
int F77_spotf2(char *uplo, int *n, float *a, int *lda, int *info)
int F77_zsteqr(char *jobz, int *n, double *d, double *e, dcomplex *z, int *ldz, double *work, int *info)
int F77_ssyev(char *jobz, char *uplo, int *n, float *a, int *lda, float *w, float *work, int *lwork, float *rwork, int *info)
int F77_dsytrd(char *uplo, int *n, double *a, int *lda, double *d, double *e, double *tau, double *work, int *lwork, int *info)
int F77_sormlq(char *side, char *trans, int *m, int *n, int *k, float *a, int *lda, float *tau, float *c, int *ldc, float *work, int *lwork, int *info)
int F77_dormlq(char *side, char *trans, int *m, int *n, int *k, double *a, int *lda, double *tau, double *c, int *ldc, double *work, int *lwork, int *info)
int F77_cunmqr(char *side, char *trans, int *m, int *n, int *k, scomplex *a, int *lda, scomplex *tau, scomplex *c, int *ldc, scomplex *work, int *lwork, int *info)
int F77_zpotri(char *uplo, int *n, dcomplex *buff_A, int *ldim_A, int *info)
int F77_zgeqr2(int *m, int *n, dcomplex *a, int *lda, dcomplex *tau, dcomplex *work, int *info)
Definition blis_type_defs.h:138
Definition blis_type_defs.h:133