LAPACK
3.9.0
LAPACK: Linear Algebra PACKage
cblas_dsyr2.c
Go to the documentation of this file.
1
/*
2
*
3
* cblas_dsyr2.c
4
* This program is a C interface to dsyr2.
5
* Written by Keita Teranishi
6
* 4/6/1998
7
*
8
*/
9
10
#include "
cblas.h
"
11
#include "
cblas_f77.h
"
12
void
cblas_dsyr2
(
const
CBLAS_LAYOUT
layout,
const
CBLAS_UPLO
Uplo,
13
const
int
N
,
const
double
alpha,
const
double
*X,
14
const
int
incX,
const
double
*Y,
const
int
incY,
double
*A,
15
const
int
lda)
16
{
17
char
UL;
18
#ifdef F77_CHAR
19
F77_CHAR
F77_UL
;
20
#else
21
#define F77_UL &UL
22
#endif
23
24
#ifdef F77_INT
25
F77_INT
F77_N
=
N
,
F77_incX
=incX,
F77_incY
=incY,
F77_lda
=lda;
26
#else
27
#define F77_N N
28
#define F77_incX incX
29
#define F77_incY incY
30
#define F77_lda lda
31
#endif
32
33
extern
int
CBLAS_CallFromC
;
34
extern
int
RowMajorStrg
;
35
RowMajorStrg
= 0;
36
CBLAS_CallFromC
= 1;
37
if
(layout ==
CblasColMajor
)
38
{
39
if
(Uplo ==
CblasLower
) UL =
'L'
;
40
else
if
(Uplo ==
CblasUpper
) UL =
'U'
;
41
else
42
{
43
cblas_xerbla
(2,
"cblas_dsyr2"
,
"Illegal Uplo setting, %d\n"
,Uplo );
44
CBLAS_CallFromC
= 0;
45
RowMajorStrg
= 0;
46
return
;
47
}
48
#ifdef F77_CHAR
49
F77_UL
= C2F_CHAR(&UL);
50
#endif
51
52
F77_dsyr2
(
F77_UL
, &
F77_N
, &alpha, X, &
F77_incX
, Y, &
F77_incY
, A,
53
&
F77_lda
);
54
55
}
else
if
(layout ==
CblasRowMajor
)
56
{
57
RowMajorStrg
= 1;
58
if
(Uplo ==
CblasLower
) UL =
'U'
;
59
else
if
(Uplo ==
CblasUpper
) UL =
'L'
;
60
else
61
{
62
cblas_xerbla
(2,
"cblas_dsyr2"
,
"Illegal Uplo setting, %d\n"
,Uplo );
63
CBLAS_CallFromC
= 0;
64
RowMajorStrg
= 0;
65
return
;
66
}
67
#ifdef F77_CHAR
68
F77_UL
= C2F_CHAR(&UL);
69
#endif
70
F77_dsyr2
(
F77_UL
, &
F77_N
, &alpha, X, &
F77_incX
, Y, &
F77_incY
, A,
71
&
F77_lda
);
72
}
else
cblas_xerbla
(1,
"cblas_dsyr2"
,
"Illegal layout setting, %d\n"
, layout);
73
CBLAS_CallFromC
= 0;
74
RowMajorStrg
= 0;
75
return
;
76
}
F77_incX
#define F77_incX
cblas_f77.h
F77_lda
#define F77_lda
cblas_xerbla
void cblas_xerbla(int p, const char *rout, const char *form,...)
Definition:
cblas_xerbla.c:8
CblasUpper
Definition:
cblas.h:21
CblasColMajor
Definition:
cblas.h:19
F77_N
#define F77_N
cblas_dsyr2
void cblas_dsyr2(const CBLAS_LAYOUT layout, const CBLAS_UPLO Uplo, const int N, const double alpha, const double *X, const int incX, const double *Y, const int incY, double *A, const int lda)
Definition:
cblas_dsyr2.c:12
F77_incY
#define F77_incY
F77_UL
#define F77_UL
CBLAS_CallFromC
int CBLAS_CallFromC
Definition:
cblas_globals.c:1
cblas.h
CBLAS_LAYOUT
CBLAS_LAYOUT
Definition:
cblas.h:19
CblasRowMajor
Definition:
cblas.h:19
RowMajorStrg
int RowMajorStrg
Definition:
cblas_globals.c:2
CblasLower
Definition:
cblas.h:21
F77_dsyr2
#define F77_dsyr2
Definition:
cblas_f77.h:106
CBLAS_UPLO
CBLAS_UPLO
Definition:
cblas.h:21
N
#define N
Definition:
example_user.c:10
CBLAS
src
cblas_dsyr2.c
Generated on Wed May 5 2021 15:10:30 for LAPACK by
1.8.16