/* blas/gsl_cblas.h
*
* Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or (at
* your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
/* This is a copy of the CBLAS standard header.
* We carry this around so we do not have to
* break our model for flexible BLAS functionality.
*/
#ifndef __GSL_CBLAS_H__
#define __GSL_CBLAS_H__
#include <stddef.h>
#undef __BEGIN_DECLS
#undef __END_DECLS
#ifdef __cplusplus
#define __BEGIN_DECLS extern "C" {
#define __END_DECLS }
#else
#define __BEGIN_DECLS /* empty */
#define __END_DECLS /* empty */
#endif
__BEGIN_DECLS
/*
* Enumerated and derived types
*/
#define CBLAS_INDEX size_t /* this may vary between platforms */
enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102};
enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113};
enum CBLAS_UPLO {CblasUpper=121, CblasLower=122};
enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132};
enum CBLAS_SIDE {CblasLeft=141, CblasRight=142};
/*
* ===========================================================================
* Prototypes for level 1 BLAS functions (complex are recast as routines)
* ===========================================================================
*/
float cblas_sdsdot(const int N, const float alpha, const float *X,
const int incX, const float *Y, const int incY);
double cblas_dsdot(const int N, const float *X, const int incX, const float *Y,
const int incY);
float cblas_sdot(const int N, const float *X, const int incX,
const float *Y, const int incY);
double cblas_ddot(const int N, const double *X, const int incX,
const double *Y, const int incY);
/*
* Functions having prefixes Z and C only
*/
void cblas_cdotu_sub(const int N, const void *X, const int incX,
const void *Y, const int incY, void *dotu);
void cblas_cdotc_sub(const int N, const void *X, const int incX,
const void *Y, const int incY, void *dotc);
void cblas_zdotu_sub(const int N, const void *X, const int incX,
const void *Y, const int incY, void *dotu);
void cblas_zdotc_sub(const int N, const void *X, const int incX,
const void *Y, const int incY, void *dotc);
/*
* Functions having prefixes S D SC DZ
*/
float cblas_snrm2(const int N, const float *X, const int incX);
float cblas_sasum(const int N, const float *X, const int incX);
double cblas_dnrm2(const int N, const double *X, const int incX);
double cblas_dasum(const int N, const double *X, const int incX);
float cblas_scnrm2(const int N, const void *X, const int incX);
float cblas_scasum(const int N, const void *X, const int incX);
double cblas_dznrm2(const int N, const void *X, const int incX);
double cblas_dzasum(const int N, const void *X, const int incX);
/*
* Functions having standard 4 prefixes (S D C Z)
*/
CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX);
CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX);
CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX);
CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX);
/*
* ===========================================================================
* Prototypes for level 1 BLAS routines
* ===========================================================================
*/
/*
* Routines with standard 4 prefixes (s, d, c, z)
*/
void cblas_sswap(const int N, float *X, const int incX,
float *Y, const int incY);
void cblas_scopy(const int N, const float *X, const int incX,
float *Y, const int incY);
void cblas_saxpy(const int N, const float alpha, const float *X,
const int incX, float *Y, const int incY);
void cblas_dswap(const int N, double *X, const int incX,
double *Y, const int incY);
void cblas_dcopy(const int N, const double *X, const int incX,
double *Y, const int incY);
void cblas_daxpy(const int N, const double alpha, const double *X,
const int incX, double *Y, const int incY);
void cblas_cswap(const int N, void *X, const int incX,
void *Y, const int incY);
void cblas_ccopy(const int N, const void *X, const int incX,
void *Y, const int incY);
void cblas_caxpy(const int N, const void *alpha, const void *X,
const int incX, void *Y, const int incY);
void cblas_zswap(const int N, void *X, const int incX,
void *Y, const int incY);
void cblas_zcopy(const int N, const void *X, const int incX,
void *Y, const int incY);
void cblas_zaxpy(const int N, const void *alpha, const void *X,
const int incX, void *Y, const int incY);
/*
* Routines with S and D prefix only
*/
void cblas_srotg(float *a, float *b, float *c, float *s);
void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);
void cblas_srot(const int N, float *X, const int incX,
float *Y, const int incY, const float c, const float s);
void cblas_srotm(const int N, float *X, const int incX,
float *Y, const int incY, const float *P);
void cblas_drotg(double *a, double *b, double *c, double *s);
void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);
void cblas_drot(const int N, double *X, const int incX,
double *Y, const int incY, const double c, const double s);
void cblas_drotm(const int N, double *X, const int incX,
double *Y, const int incY, const double *P);
/*
* Routines with S D C Z CS and ZD prefixes
*/
void cblas_sscal(const int N, const float alpha, float *X, const int incX);
void cblas_dscal(const int N, const double alpha, double *X, const int incX);
void cblas_cscal(const int N, const void *alpha, void *X, const int incX);
void cblas_zscal(const int N, const void *alpha, void *X, const int incX);
void cblas_csscal(const int N, const float alpha, void *X, const int incX);
void cblas_zdscal(const int N, const double alpha, void *X, const int incX);
/*
* ===========================================================================
* Prototypes for level 2 BLAS
* ===========================================================================
*/
/*
* Routines with standard 4 prefixes (S, D, C, Z)
*/
void cblas_sgemv(const enum CBLAS_ORDER order,
const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
const float alpha, const float *A, const int lda,
const float *X, const int incX, const float beta,
float *Y, const int incY);
void cblas_sgbmv(const enum CBLAS_ORDER order,
const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
const int KL, const int KU, const float alpha,
const float *A, const int lda, const float *X,
const int incX, const float beta, float *Y, const int incY);
void cblas_strmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
const int N, const float *A, const int lda,
float *X, const int incX);
void cblas_stbmv(const enum CBLAS
没有合适的资源?快使用搜索试试~ 我知道了~
VS2015 编译的 GSL(GNU Scientific Library)
共234个文件
h:226个
lib:4个
exp:2个
5星 · 超过95%的资源 需积分: 50 148 下载量 113 浏览量
2016-08-31
20:44:17
上传
评论 7
收藏 2.68MB ZIP 举报
温馨提示
VS2015 x86 编译器 编译的 GSL-2.1 (GNU Scientific Library) 。包含静态库和动态库 dll。 注意:非 VS2015 编译的 GSL 都不能用在 VS2015 中,网上其他所有的 gsl for windows 都不行的。花了我将近一周时间才把 gsl 移植到 vs2015 上。
资源推荐
资源详情
资源评论
收起资源包目录
VS2015 编译的 GSL(GNU Scientific Library) (234个子文件)
gsl_msvc2015_x86.dll 1.56MB
gslcblas_msvc2015_x86.dll 240KB
gsl_msvc2015_x86.exp 651KB
gslcblas_msvc2015_x86.exp 16KB
gsl_cblas.h 33KB
gsl_linalg.h 22KB
gsl_blas.h 21KB
gsl_matrix_complex_long_double.h 15KB
gsl_sf_bessel.h 14KB
gsl_odeiv2.h 13KB
gsl_matrix_complex_float.h 13KB
gsl_matrix_long_double.h 13KB
gsl_eigen.h 13KB
gsl_matrix_ushort.h 12KB
gsl_matrix_complex_double.h 12KB
gsl_matrix_uchar.h 12KB
gsl_matrix_ulong.h 12KB
gsl_matrix_short.h 12KB
gsl_matrix_float.h 12KB
gsl_multifit.h 12KB
gsl_matrix_uint.h 12KB
gsl_matrix_long.h 12KB
gsl_matrix_char.h 12KB
gsl_sf_legendre.h 12KB
gsl_matrix_int.h 12KB
gsl_multifit_nlin.h 11KB
gsl_matrix_double.h 11KB
gsl_integration.h 11KB
gsl_vector_complex_long_double.h 10KB
gsl_vector_complex_float.h 9KB
gsl_interp2d.h 9KB
gsl_randist.h 8KB
gsl_vector_long_double.h 8KB
gsl_vector_complex_double.h 8KB
gsl_vector_ushort.h 8KB
gsl_odeiv.h 8KB
gsl_sf_gamma.h 8KB
gsl_statistics_long_double.h 8KB
gsl_vector_ulong.h 7KB
gsl_vector_uchar.h 7KB
gsl_vector_uint.h 7KB
gsl_vector_float.h 7KB
gsl_vector_short.h 7KB
gsl_cdf.h 7KB
gsl_vector_char.h 7KB
gsl_vector_long.h 7KB
gsl_vector_int.h 7KB
gsl_const_mksa.h 7KB
gsl_statistics_float.h 7KB
gsl_interp.h 7KB
gsl_rng.h 7KB
gsl_const_mks.h 7KB
gsl_statistics_double.h 7KB
gsl_multimin.h 7KB
gsl_vector_double.h 7KB
gsl_const_cgsm.h 7KB
gsl_const_cgs.h 6KB
gsl_multiroots.h 6KB
gsl_complex_math.h 6KB
gsl_errno.h 6KB
gsl_histogram2d.h 6KB
gsl_sum.h 5KB
gsl_multilarge.h 5KB
gsl_poly.h 5KB
gsl_fft_complex_float.h 5KB
gsl_statistics_ushort.h 5KB
gsl_statistics_uchar.h 5KB
gsl_statistics_ulong.h 5KB
gsl_statistics_uint.h 5KB
gsl_fft_complex.h 5KB
gsl_statistics_short.h 5KB
gsl_statistics_long.h 5KB
gsl_statistics_char.h 5KB
gsl_spline2d.h 5KB
gsl_spmatrix.h 5KB
gsl_statistics_int.h 4KB
gsl_sf_hyperg.h 4KB
gsl_chebyshev.h 4KB
gsl_sf_coulomb.h 4KB
gsl_sf_expint.h 4KB
gsl_math.h 4KB
gsl_sf_mathieu.h 4KB
gsl_wavelet2d.h 4KB
gsl_sf_dilog.h 4KB
gsl_sf_coupling.h 4KB
gsl_sf_ellint.h 4KB
gsl_histogram.h 4KB
gsl_min.h 4KB
gsl_sf_trig.h 4KB
gsl_bspline.h 4KB
gsl_sf_exp.h 4KB
gsl_machine.h 4KB
gsl_roots.h 4KB
gsl_sf_airy.h 4KB
gsl_sf_fermi_dirac.h 3KB
gsl_complex.h 3KB
gsl_permutation.h 3KB
gsl_monte_vegas.h 3KB
gsl_fft_halfcomplex_float.h 3KB
gsl_wavelet.h 3KB
共 234 条
- 1
- 2
- 3
liyuanbhu
- 粉丝: 5562
- 资源: 20
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页