📄 gsl_sf_bessel.h
字号:
/* specfunc/gsl_sf_bessel.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 2 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., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/* Author: G. Jungman */
#ifndef __GSL_SF_BESSEL_H__
#define __GSL_SF_BESSEL_H__
#include <stdlib.h>
#include <gsl/gsl_mode.h>
#include <gsl/gsl_precision.h>
#include <gsl/gsl_sf_result.h>
#include "..\\WinGslDll.inl"
#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
/* Regular Bessel Function J_0(x)
*
* exceptions: none
*/
WINGSLDLL_API int gsl_sf_bessel_J0_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_J0(const double x);
/* Regular Bessel Function J_1(x)
*
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_J1_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_J1(const double x);
/* Regular Bessel Function J_n(x)
*
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Jn_e(int n, double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_Jn(const int n, const double x);
/* Regular Bessel Function J_n(x), nmin <= n <= nmax
*
* exceptions: GSL_EDOM, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Jn_array(int nmin, int nmax, double x, double * result_array);
/* Irregular Bessel function Y_0(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Y0_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_Y0(const double x);
/* Irregular Bessel function Y_1(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Y1_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_Y1(const double x);
/* Irregular Bessel function Y_n(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Yn_e(int n,const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_Yn(const int n,const double x);
/* Irregular Bessel function Y_n(x), nmin <= n <= nmax
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Yn_array(const int nmin, const int nmax, const double x, double * result_array);
/* Regular modified Bessel function I_0(x)
*
* exceptions: GSL_EOVRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_I0_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_I0(const double x);
/* Regular modified Bessel function I_1(x)
*
* exceptions: GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_I1_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_I1(const double x);
/* Regular modified Bessel function I_n(x)
*
* exceptions: GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_In_e(const int n, const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_In(const int n, const double x);
/* Regular modified Bessel function I_n(x) for n=nmin,...,nmax
*
* nmin >=0, nmax >= nmin
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_In_array(const int nmin, const int nmax, const double x, double * result_array);
/* Scaled regular modified Bessel function
* exp(-|x|) I_0(x)
*
* exceptions: none
*/
WINGSLDLL_API int gsl_sf_bessel_I0_scaled_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_I0_scaled(const double x);
/* Scaled regular modified Bessel function
* exp(-|x|) I_1(x)
*
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_I1_scaled_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_I1_scaled(const double x);
/* Scaled regular modified Bessel function
* exp(-|x|) I_n(x)
*
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_In_scaled_e(int n, const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_In_scaled(const int n, const double x);
/* Scaled regular modified Bessel function
* exp(-|x|) I_n(x) for n=nmin,...,nmax
*
* nmin >=0, nmax >= nmin
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_In_scaled_array(const int nmin, const int nmax, const double x, double * result_array);
/* Irregular modified Bessel function K_0(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_K0_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_K0(const double x);
/* Irregular modified Bessel function K_1(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_K1_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_K1(const double x);
/* Irregular modified Bessel function K_n(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Kn_e(const int n, const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_Kn(const int n, const double x);
/* Irregular modified Bessel function K_n(x) for n=nmin,...,nmax
*
* x > 0.0, nmin >=0, nmax >= nmin
* exceptions: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Kn_array(const int nmin, const int nmax, const double x, double * result_array);
/* Scaled irregular modified Bessel function
* exp(x) K_0(x)
*
* x > 0.0
* exceptions: GSL_EDOM
*/
WINGSLDLL_API int gsl_sf_bessel_K0_scaled_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_K0_scaled(const double x);
/* Scaled irregular modified Bessel function
* exp(x) K_1(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_K1_scaled_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_K1_scaled(const double x);
/* Scaled irregular modified Bessel function
* exp(x) K_n(x)
*
* x > 0.0
* exceptions: GSL_EDOM, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Kn_scaled_e(int n, const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_Kn_scaled(const int n, const double x);
/* Scaled irregular modified Bessel function exp(x) K_n(x) for n=nmin,...,nmax
*
* x > 0.0, nmin >=0, nmax >= nmin
* exceptions: GSL_EDOM, GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_Kn_scaled_array(const int nmin, const int nmax, const double x, double * result_array);
/* Regular spherical Bessel function j_0(x) = sin(x)/x
*
* exceptions: none
*/
WINGSLDLL_API int gsl_sf_bessel_j0_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_j0(const double x);
/* Regular spherical Bessel function j_1(x) = (sin(x)/x - cos(x))/x
*
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_j1_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_j1(const double x);
/* Regular spherical Bessel function j_2(x) = ((3/x^2 - 1)sin(x) - 3cos(x)/x)/x
*
* exceptions: GSL_EUNDRFLW
*/
WINGSLDLL_API int gsl_sf_bessel_j2_e(const double x, gsl_sf_result * result);
WINGSLDLL_API double gsl_sf_bessel_j2(const double x);
/* Regular spherical Bessel function j_l(x)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -