BLAS1_C
Basic Linear Algebra Subprograms
Level 1
Single Precision Complex Arithmetic {#blas1_c-basic-linear-algebra-subprograms-level-1-single-precision-complex-arithmetic align="center"}
BLAS1_C is a C++ library which implements the Level 1 BLAS, or Basic Linear Algebra Subprograms, using single precision complex arithmetic.
The BLAS are a small core library of linear algebra utilities, which can be highly optimized for various architectures. Software that relies on the BLAS is thus highly portable, and will typically run very efficiently.
The Level 1 BLAS are primarily for use in vector operations. In certain cases, they may also be used to operate on the rows or columns of a two-dimensional array.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
BLAS1_C is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.
BLAS0, a C++ library which contains auxilliary functions for the Basic Linear Algebra Subprograms (BLAS).
BLAS1_D, a C++ library which contains basic linear algebra routines for vector-vector operations, using double precision real arithmetic.
BLAS1_S, a C++ library which contains basic linear algebra routines for vector-vector operations, using single precision real arithmetic.
BLAS1_Z, a C++ library which contains basic linear algebra routines for vector-vector operations, using double precision complex arithmetic.
BLAS2, a C++ library which contains basic linear algebra subprograms (BLAS) for matrix-vector operations;
BLAS3, a C++ library which contains basic linear algebra subprograms (BLAS) for matrix-matrix operations;
COMPLEX_NUMBERS, a C++ program which demonstrates some simple features involved in the use of complex numbers in C programming.
GSL, C++ programs which illustrate the use of the Gnu Scientific Library;
LINPACK, a C++ library which solves linear systems using single precision complex arithmetic;
SUPER_BLAS, a C library which implements some of the Basic Linear Algebra Subprograms for fast execution.
Original FORTRAN77 version by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh. C++ version by John Burkardt.
- Thomas Coleman, Charles vanLoan,
Handbook for Matrix Computations,
SIAM, 1988,
ISBN13: 978-0-898712-27-8,
LC: QA188.C65. - Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart,
LINPACK User's Guide,
SIAM, 1979,
ISBN13: 978-0-898711-72-1,
LC: QA214.L56. - Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh,
Algorithm 539: Basic Linear Algebra Subprograms for Fortran Usage,
ACM Transactions on Mathematical Software,
Volume 5, Number 3, September 1979, pages 308-323.
- blas1_c.cpp, the source code.
- blas1_c.hpp, the include file.
- blas1_c_prb.cpp, the calling program.
- blas1_c_prb_output.txt the output file.
- CAXPY computes a complex constant times a vector plus a vector.
- CCOPY copies a complex vector X to a vector Y.
- CDOTC forms the conjugated dot product of two complex vectors.
- CDOTU forms the unconjugated dot product of two complex vectors.
- CROTG determines a complex Givens rotation.
- CSCAL scales a complex vector by a constant.
- CSROT applies a complex plane rotation.
- CSSCAL scales a complex vector by a real constant.
- CSWAP interchanges two complex vectors.
- ICAMAX indexes the complex vector element of maximum absolute value.
- SCASUM takes the sum of the absolute values of a complex vector.
- SCNRM2 returns the euclidean norm of a complex vector.
You can go up one level to the C++ source codes.
Last revised on 23 June 2009.