LAPACK
3.9.0
LAPACK: Linear Algebra PACKage
ilaenv2stage.f
Go to the documentation of this file.
1
*> \brief \b ILAENV2STAGE
2
*
3
* =========== DOCUMENTATION ===========
4
*
5
* Online html documentation available at
6
* http://www.netlib.org/lapack/explore-html/
7
*
8
*> \htmlonly
9
*> Download ILAENV2STAGE + dependencies
10
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/ilaenv2stage.f">
11
*> [TGZ]</a>
12
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/ilaenv2stage.f">
13
*> [ZIP]</a>
14
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/ilaenv2stage.f">
15
*> [TXT]</a>
16
*> \endhtmlonly
17
*
18
* Definition:
19
* ===========
20
*
21
* INTEGER FUNCTION ILAENV2STAGE( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
22
*
23
* .. Scalar Arguments ..
24
* CHARACTER*( * ) NAME, OPTS
25
* INTEGER ISPEC, N1, N2, N3, N4
26
* ..
27
*
28
*
29
*> \par Purpose:
30
* =============
31
*>
32
*> \verbatim
33
*>
34
*> ILAENV2STAGE is called from the LAPACK routines to choose problem-dependent
35
*> parameters for the local environment. See ISPEC for a description of
36
*> the parameters.
37
*> It sets problem and machine dependent parameters useful for *_2STAGE and
38
*> related subroutines.
39
*>
40
*> ILAENV2STAGE returns an INTEGER
41
*> if ILAENV2STAGE >= 0: ILAENV2STAGE returns the value of the parameter
42
*> specified by ISPEC
43
*> if ILAENV2STAGE < 0: if ILAENV2STAGE = -k, the k-th argument had an
44
*> illegal value.
45
*>
46
*> This version provides a set of parameters which should give good,
47
*> but not optimal, performance on many of the currently available
48
*> computers for the 2-stage solvers. Users are encouraged to modify this
49
*> subroutine to set the tuning parameters for their particular machine using
50
*> the option and problem size information in the arguments.
51
*>
52
*> This routine will not function correctly if it is converted to all
53
*> lower case. Converting it to all upper case is allowed.
54
*> \endverbatim
55
*
56
* Arguments:
57
* ==========
58
*
59
*> \param[in] ISPEC
60
*> \verbatim
61
*> ISPEC is INTEGER
62
*> Specifies the parameter to be returned as the value of
63
*> ILAENV2STAGE.
64
*> = 1: the optimal blocksize nb for the reduction to BAND
65
*>
66
*> = 2: the optimal blocksize ib for the eigenvectors
67
*> singular vectors update routine
68
*>
69
*> = 3: The length of the array that store the Housholder
70
*> representation for the second stage
71
*> Band to Tridiagonal or Bidiagonal
72
*>
73
*> = 4: The workspace needed for the routine in input.
74
*>
75
*> = 5: For future release.
76
*> \endverbatim
77
*>
78
*> \param[in] NAME
79
*> \verbatim
80
*> NAME is CHARACTER*(*)
81
*> The name of the calling subroutine, in either upper case or
82
*> lower case.
83
*> \endverbatim
84
*>
85
*> \param[in] OPTS
86
*> \verbatim
87
*> OPTS is CHARACTER*(*)
88
*> The character options to the subroutine NAME, concatenated
89
*> into a single character string. For example, UPLO = 'U',
90
*> TRANS = 'T', and DIAG = 'N' for a triangular routine would
91
*> be specified as OPTS = 'UTN'.
92
*> \endverbatim
93
*>
94
*> \param[in] N1
95
*> \verbatim
96
*> N1 is INTEGER
97
*> \endverbatim
98
*>
99
*> \param[in] N2
100
*> \verbatim
101
*> N2 is INTEGER
102
*> \endverbatim
103
*>
104
*> \param[in] N3
105
*> \verbatim
106
*> N3 is INTEGER
107
*> \endverbatim
108
*>
109
*> \param[in] N4
110
*> \verbatim
111
*> N4 is INTEGER
112
*> Problem dimensions for the subroutine NAME; these may not all
113
*> be required.
114
*> \endverbatim
115
*
116
* Authors:
117
* ========
118
*
119
*> \author Univ. of Tennessee
120
*> \author Univ. of California Berkeley
121
*> \author Univ. of Colorado Denver
122
*> \author NAG Ltd.
123
*> \author Nick R. Papior
124
*
125
*> \date July 2017
126
*
127
*> \ingroup OTHERauxiliary
128
*
129
*> \par Further Details:
130
* =====================
131
*>
132
*> \verbatim
133
*>
134
*> The following conventions have been used when calling ILAENV2STAGE
135
*> from the LAPACK routines:
136
*> 1) OPTS is a concatenation of all of the character options to
137
*> subroutine NAME, in the same order that they appear in the
138
*> argument list for NAME, even if they are not used in determining
139
*> the value of the parameter specified by ISPEC.
140
*> 2) The problem dimensions N1, N2, N3, N4 are specified in the order
141
*> that they appear in the argument list for NAME. N1 is used
142
*> first, N2 second, and so on, and unused problem dimensions are
143
*> passed a value of -1.
144
*> 3) The parameter value returned by ILAENV2STAGE is checked for validity in
145
*> the calling subroutine.
146
*>
147
*> \endverbatim
148
*>
149
* =====================================================================
150
INTEGER
FUNCTION
ilaenv2stage
( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
151
*
152
* -- LAPACK auxiliary routine (version 3.8.0) --
153
* -- LAPACK is a software package provided by Univ. of Tennessee, --
154
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
155
* July 2017
156
*
157
* .. Scalar Arguments ..
158
CHARACTER*( * )
name, opts
159
INTEGER
ispec, n1, n2, n3, n4
160
* ..
161
*
162
* =====================================================================
163
* ..
164
* .. Local Scalars ..
165
INTEGER
iispec
166
* ..
167
* .. External Functions ..
168
INTEGER
iparam2stage
169
EXTERNAL
iparam2stage
170
* ..
171
* .. Executable Statements ..
172
*
173
GO TO
( 10, 10, 10, 10, 10 )ispec
174
*
175
* Invalid value for ISPEC
176
*
177
ilaenv2stage
= -1
178
RETURN
179
*
180
10
CONTINUE
181
*
182
* 2stage eigenvalues and SVD or related subroutines.
183
*
184
iispec = 16 + ispec
185
ilaenv2stage
=
iparam2stage
( iispec, name, opts,
186
$ n1, n2, n3, n4 )
187
RETURN
188
*
189
* End of ILAENV2STAGE
190
*
191
END
iparam2stage
integer function iparam2stage(ISPEC, NAME, OPTS, NI, NBI, IBI, NXI)
IPARAM2STAGE
Definition:
iparam2stage.F:157
ilaenv2stage
integer function ilaenv2stage(ISPEC, NAME, OPTS, N1, N2, N3, N4)
ILAENV2STAGE
Definition:
ilaenv2stage.f:151
SRC
ilaenv2stage.f
Generated on Wed May 5 2021 15:10:41 for LAPACK by
1.8.16