LAPACK
3.4.2
LAPACK: Linear Algebra PACKage
Main Page
Modules
Files
File List
File Members
All
Files
Functions
Groups
xerbla_array.f
Go to the documentation of this file.
1
*> \brief \b XERBLA_ARRAY
2
*
3
* =========== DOCUMENTATION ===========
4
*
5
* Online html documentation available at
6
* http://www.netlib.org/lapack/explore-html/
7
*
8
* Definition:
9
* ===========
10
*
11
* SUBROUTINE XERBLA_ARRAY(SRNAME_ARRAY, SRNAME_LEN, INFO)
12
*
13
* .. Scalar Arguments ..
14
* INTEGER SRNAME_LEN, INFO
15
* ..
16
* .. Array Arguments ..
17
* CHARACTER(1) SRNAME_ARRAY(SRNAME_LEN)
18
* ..
19
*
20
*
21
*> \par Purpose:
22
* =============
23
*>
24
*> \verbatim
25
*>
26
*> XERBLA_ARRAY assists other languages in calling XERBLA, the LAPACK
27
*> and BLAS error handler. Rather than taking a Fortran string argument
28
*> as the function's name, XERBLA_ARRAY takes an array of single
29
*> characters along with the array's length. XERBLA_ARRAY then copies
30
*> up to 32 characters of that array into a Fortran string and passes
31
*> that to XERBLA. If called with a non-positive SRNAME_LEN,
32
*> XERBLA_ARRAY will call XERBLA with a string of all blank characters.
33
*>
34
*> Say some macro or other device makes XERBLA_ARRAY available to C99
35
*> by a name lapack_xerbla and with a common Fortran calling convention.
36
*> Then a C99 program could invoke XERBLA via:
37
*> {
38
*> int flen = strlen(__func__);
39
*> lapack_xerbla(__func__, &flen, &info);
40
*> }
41
*>
42
*> Providing XERBLA_ARRAY is not necessary for intercepting LAPACK
43
*> errors. XERBLA_ARRAY calls XERBLA.
44
*> \endverbatim
45
*
46
* Arguments:
47
* ==========
48
*
49
*> \param[in] SRNAME_ARRAY
50
*> \verbatim
51
*> SRNAME_ARRAY is CHARACTER(1) array, dimension (SRNAME_LEN)
52
*> The name of the routine which called XERBLA_ARRAY.
53
*> \endverbatim
54
*>
55
*> \param[in] SRNAME_LEN
56
*> \verbatim
57
*> SRNAME_LEN is INTEGER
58
*> The length of the name in SRNAME_ARRAY.
59
*> \endverbatim
60
*>
61
*> \param[in] INFO
62
*> \verbatim
63
*> INFO is INTEGER
64
*> The position of the invalid parameter in the parameter list
65
*> of the calling routine.
66
*> \endverbatim
67
*
68
* Authors:
69
* ========
70
*
71
*> \author Univ. of Tennessee
72
*> \author Univ. of California Berkeley
73
*> \author Univ. of Colorado Denver
74
*> \author NAG Ltd.
75
*
76
*> \date November 2011
77
*
78
*> \ingroup aux_blas
79
*
80
* =====================================================================
81
SUBROUTINE
xerbla_array
(SRNAME_ARRAY, SRNAME_LEN, INFO)
82
*
83
* -- Reference BLAS level1 routine (version 3.4.0) --
84
* -- Reference BLAS is a software package provided by Univ. of Tennessee, --
85
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
86
* November 2011
87
*
88
* .. Scalar Arguments ..
89
INTEGER
srname_len, info
90
* ..
91
* .. Array Arguments ..
92
CHARACTER(1)
srname_array(srname_len)
93
* ..
94
*
95
* =====================================================================
96
*
97
* ..
98
* .. Local Scalars ..
99
INTEGER
i
100
* ..
101
* .. Local Arrays ..
102
CHARACTER*32
srname
103
* ..
104
* .. Intrinsic Functions ..
105
INTRINSIC
min, len
106
* ..
107
* .. External Functions ..
108
EXTERNAL
xerbla
109
* ..
110
* .. Executable Statements ..
111
srname =
''
112
DO
i = 1, min( srname_len, len( srname ) )
113
srname( i:i ) = srname_array( i )
114
END DO
115
116
CALL
xerbla
( srname, info )
117
118
return
119
END
BLAS
SRC
xerbla_array.f
Generated on Tue Sep 25 2012 16:27:02 for LAPACK by
1.8.1.1