1
/* This file is a collection of wrappers around the
2
* Amos Fortran library of functions that take complex
3
* variables (see www.netlib.org) so that they can be called from
4
* the cephes library of corresponding name but work with complex
8
#ifndef _AMOS_WRAPPERS_H
9
#define _AMOS_WRAPPERS_H
11
#include "cephes/mconf.h"
13
#define DO_MTHERR(name) if (nz !=0 || ierr !=0) mtherr(name, ierr_to_mtherr(nz, ierr))
14
int ierr_to_mtherr( int nz, int ierr);
15
int cairy_wrap(Py_complex z, Py_complex *ai, Py_complex *aip, Py_complex *bi, Py_complex *bip);
16
int cairy_wrap_e(Py_complex z, Py_complex *ai, Py_complex *aip, Py_complex *bi, Py_complex *bip);
17
Py_complex cbesi_wrap( double v, Py_complex z);
18
Py_complex cbesi_wrap_e( double v, Py_complex z);
19
Py_complex cbesj_wrap( double v, Py_complex z);
20
Py_complex cbesj_wrap_e( double v, Py_complex z);
21
Py_complex cbesy_wrap( double v, Py_complex z);
22
Py_complex cbesy_wrap_e( double v, Py_complex z);
23
Py_complex cbesk_wrap( double v, Py_complex z);
24
Py_complex cbesk_wrap_e( double v, Py_complex z);
25
Py_complex cbesh_wrap1( double v, Py_complex z);
26
Py_complex cbesh_wrap1_e( double v, Py_complex z);
27
Py_complex cbesh_wrap2( double v, Py_complex z);
28
Py_complex cbesh_wrap2_e( double v, Py_complex z);
30
int cairy_(double *, int *, int *, doublecomplex *, int *, int *);
31
int cbiry_(doublecomplex *, int *, int *, doublecomplex *, int *, int *);
32
int cbesi_(doublecomplex *, double *, int *, int *, doublecomplex *, int *, int *);
33
int cbesj_(doublecomplex *, double *, int *, int *, doublecomplex *, int *, int *);
34
int cbesk_(doublecomplex *, double *, int *, int *, doublecomplex *, int *, int *);
35
int cbesy_(doublecomplex *, double *, int *, int *, doublecomplex *, int *, doublecomplex *, int *);
36
int cbesh_(doublecomplex *, double *, int *, int *, int *, doublecomplex *, int *, int *);