public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-09 21:01 bangerth
0 siblings, 0 replies; 15+ messages in thread
From: bangerth @ 2003-04-09 21:01 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, urazov
Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
State-Changed-From-To: open->feedback
State-Changed-By: bangerth
State-Changed-When: Wed Apr 9 21:01:00 2003
State-Changed-Why:
We need some preprocessed sources to reproduce the problem.
Please review
http://gcc.gnu.org/bugs.html
to see what exactly we need.
Regards
Wolfgang
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-12 20:27 ebotcazou
0 siblings, 0 replies; 15+ messages in thread
From: ebotcazou @ 2003-04-12 20:27 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, urazov
Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
State-Changed-From-To: open->feedback
State-Changed-By: ebotcazou
State-Changed-When: Sat Apr 12 20:27:27 2003
State-Changed-Why:
Tough bug :-)
I was able to construct a self-contained testcase, but it doesn't fail on
SunOS gax 5.8 Generic_108528-16 sun4u sparc SUNW,Ultra-2
with GCC 3.2.1 and GCC 3.2.2
Could you try to build a self-contained testcase yourself?
Begin with the test program and gradually import the required
functions from the library sources, verifying each time that
the test still fails.
Thanks in advance.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-12 20:07 ebotcazou
0 siblings, 0 replies; 15+ messages in thread
From: ebotcazou @ 2003-04-12 20:07 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, urazov
Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
State-Changed-From-To: feedback->open
State-Changed-By: ebotcazou
State-Changed-When: Sat Apr 12 20:07:24 2003
State-Changed-Why:
Feedback received.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 21:26 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-11 21:26 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: ebotcazou@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Fri, 11 Apr 2003 14:24:57 -0700 (PDT)
It seems I cant send you e-Mail. It says "the list for
general discussion". Please let me know if got my
mails
--- ebotcazou@gcc.gnu.org wrote:
> Synopsis: Seems like bug in code generator on Sun
> Sparc (Sol;aris 8) platform
>
> State-Changed-From-To: open->feedback
> State-Changed-By: ebotcazou
> State-Changed-When: Fri Apr 11 09:02:04 2003
> State-Changed-Why:
> Hum... the file you sent only contains the test,
> not the
> function that is being tested. You need to
> determine which one is miscompiled: compile with
> (-O0, -O0) then (-O2, -O0)
> and (-O0, -O2) and verify each time if the test
> pass.
>
>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 21:26 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-11 21:26 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: ebotcazou@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Fri, 11 Apr 2003 14:23:15 -0700 (PDT)
--0-18757205-1050096195=:13710
Content-Type: text/plain; charset=us-ascii
Content-Id:
Content-Disposition: inline
files
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
--0-18757205-1050096195=:13710
Content-Type: text/plain; name="compile-swap.sh"
Content-Description: compile-swap.sh
Content-Disposition: inline; filename="compile-swap.sh"
#!/bin/sh
OPT0='-O0 -O0'
OPT1='-O2 -O0'
OPT2='-O0 -O2'
OPT3='-O0'
OPT4='-O1'
OPT5='-O2'
OPT=$OPT0
LVL=0
case $1 in
0) OPT=$OPT0
LVL=0 ;;
1) OPT=$OPT1
LVL=1 ;;
2) OPT=$OPT2
LVL=2 ;;
3) OPT=$OPT3
LVL=3 ;;
4) OPT=$OPT4
LVL=4 ;;
5) OPT=$OPT5
LVL=5 ;;
*) echo "Optimization level must be 0 or 1 or 2 or 3 or 4 or 5. Default is used"
esac
echo "Optimization level: " $OPT
rm -f .libs/swap.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c swap.c -fPIC -DPIC -o .libs/swap.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c swap.c -o swap.o >/dev/null 2>&1
mv -f .libs/swap.lo swap.lo
/bin/sh ../libtool --mode=link gcc -g -O2 -o libgslvector.la init.lo file.lo vector.lo copy.lo swap.lo prop.lo minmax.lo oper.lo reim.lo subvector.lo view.lo -lm
rm test_static.o
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c test_static.c
/bin/sh ../libtool --mode=link gcc -g $OPT -o test_static test_static.o libgslvector.la ../block/libgslblock.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la -lm
ls -al test_static.o test_static
./test_static > LOG$LVL
ls -al LOG$LVL
--0-18757205-1050096195=:13710
Content-Type: text/plain; name="swap.i"
Content-Description: swap.i
Content-Disposition: inline; filename="swap.i"
# 1 "swap.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "swap.c"
# 1 "../config.h" 1
# 2 "swap.c" 2
# 1 "../gsl/gsl_errno.h" 1
# 23 "../gsl/gsl_errno.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 36 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 22 "/usr/include/stdio_impl.h" 3 4
typedef int ssize_t;
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
typedef unsigned int size_t;
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 105 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef long off_t;
typedef __longlong_t off64_t;
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 24 "../gsl/gsl_errno.h" 2
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 1 "../gsl/gsl_types.h" 1
# 26 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 3 "swap.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 23 "../gsl/gsl_vector_complex_long_double.h"
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 144 "/usr/include/stdlib.h" 3 4
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 24 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
extern inline
long double
gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x)
{
v->data[i * v->stride] = x;
}
extern inline
long double *
gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i)
{
return (long double *) (v->data + i * v->stride);
}
extern inline
const long double *
gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i)
{
return (const long double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
extern inline
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v,
const size_t i)
{
return *((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v,
const size_t i, gsl_complex_long_double z)
{
*((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_long_double *
gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v,
const size_t i)
{
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_long_double *
gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v,
const size_t i)
{
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
extern inline
double
gsl_vector_get (const gsl_vector * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_set (gsl_vector * v, const size_t i, double x)
{
v->data[i * v->stride] = x;
}
extern inline
double *
gsl_vector_ptr (gsl_vector * v, const size_t i)
{
return (double *) (v->data + i * v->stride);
}
extern inline
const double *
gsl_vector_const_ptr (const gsl_vector * v, const size_t i)
{
return (const double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
extern inline
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v,
const size_t i)
{
return *((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_set (gsl_vector_complex * v,
const size_t i, gsl_complex z)
{
*((gsl_complex*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex *
gsl_vector_complex_ptr (gsl_vector_complex * v,
const size_t i)
{
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex *
gsl_vector_complex_const_ptr (const gsl_vector_complex * v,
const size_t i)
{
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
extern inline
float
gsl_vector_float_get (const gsl_vector_float * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x)
{
v->data[i * v->stride] = x;
}
extern inline
float *
gsl_vector_float_ptr (gsl_vector_float * v, const size_t i)
{
return (float *) (v->data + i * v->stride);
}
extern inline
const float *
gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i)
{
return (const float *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
extern inline
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v,
const size_t i)
{
return *((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_float_set (gsl_vector_complex_float * v,
const size_t i, gsl_complex_float z)
{
*((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_float *
gsl_vector_complex_float_ptr (gsl_vector_complex_float * v,
const size_t i)
{
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_float *
gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v,
const size_t i)
{
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
extern inline
unsigned long
gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned long *
gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i)
{
return (unsigned long *) (v->data + i * v->stride);
}
extern inline
const unsigned long *
gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i)
{
return (const unsigned long *) (v->data + i * v->stride);
}
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
extern inline
long
gsl_vector_long_get (const gsl_vector_long * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x)
{
v->data[i * v->stride] = x;
}
extern inline
long *
gsl_vector_long_ptr (gsl_vector_long * v, const size_t i)
{
return (long *) (v->data + i * v->stride);
}
extern inline
const long *
gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i)
{
return (const long *) (v->data + i * v->stride);
}
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
extern inline
unsigned int
gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned int *
gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i)
{
return (unsigned int *) (v->data + i * v->stride);
}
extern inline
const unsigned int *
gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i)
{
return (const unsigned int *) (v->data + i * v->stride);
}
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
extern inline
int
gsl_vector_int_get (const gsl_vector_int * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x)
{
v->data[i * v->stride] = x;
}
extern inline
int *
gsl_vector_int_ptr (gsl_vector_int * v, const size_t i)
{
return (int *) (v->data + i * v->stride);
}
extern inline
const int *
gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i)
{
return (const int *) (v->data + i * v->stride);
}
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
extern inline
unsigned short
gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned short *
gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i)
{
return (unsigned short *) (v->data + i * v->stride);
}
extern inline
const unsigned short *
gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i)
{
return (const unsigned short *) (v->data + i * v->stride);
}
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
extern inline
short
gsl_vector_short_get (const gsl_vector_short * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x)
{
v->data[i * v->stride] = x;
}
extern inline
short *
gsl_vector_short_ptr (gsl_vector_short * v, const size_t i)
{
return (short *) (v->data + i * v->stride);
}
extern inline
const short *
gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i)
{
return (const short *) (v->data + i * v->stride);
}
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
extern inline
unsigned char
gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned char *
gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i)
{
return (unsigned char *) (v->data + i * v->stride);
}
extern inline
const unsigned char *
gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i)
{
return (const unsigned char *) (v->data + i * v->stride);
}
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
extern inline
char
gsl_vector_char_get (const gsl_vector_char * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x)
{
v->data[i * v->stride] = x;
}
extern inline
char *
gsl_vector_char_ptr (gsl_vector_char * v, const size_t i)
{
return (char *) (v->data + i * v->stride);
}
extern inline
const char *
gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i)
{
return (const char *) (v->data + i * v->stride);
}
# 23 "../gsl/gsl_vector.h" 2
# 4 "swap.c" 2
# 1 "../templates_on.h" 1
# 7 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w)
{
long double * d1 = v->data ;
long double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
long double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 8 "swap.c" 2
# 1 "../templates_off.h" 1
# 9 "swap.c" 2
# 1 "../templates_on.h" 1
# 13 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w)
{
double * d1 = v->data ;
double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_reverse (gsl_vector_complex * v)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 14 "swap.c" 2
# 1 "../templates_off.h" 1
# 15 "swap.c" 2
# 1 "../templates_on.h" 1
# 19 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w)
{
float * d1 = v->data ;
float * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
float tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_float_reverse (gsl_vector_complex_float * v)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 20 "swap.c" 2
# 1 "../templates_off.h" 1
# 21 "swap.c" 2
# 1 "../templates_on.h" 1
# 25 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w)
{
long double * d1 = v->data ;
long double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
long double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_double_reverse (gsl_vector_long_double * v)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 26 "swap.c" 2
# 1 "../templates_off.h" 1
# 27 "swap.c" 2
# 1 "../templates_on.h" 1
# 31 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_swap (gsl_vector * v, gsl_vector * w)
{
double * d1 = v->data ;
double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_reverse (gsl_vector * v)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 32 "swap.c" 2
# 1 "../templates_off.h" 1
# 33 "swap.c" 2
# 1 "../templates_on.h" 1
# 37 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w)
{
float * d1 = v->data ;
float * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
float tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_float_reverse (gsl_vector_float * v)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 38 "swap.c" 2
# 1 "../templates_off.h" 1
# 39 "swap.c" 2
# 1 "../templates_on.h" 1
# 43 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w)
{
unsigned long * d1 = v->data ;
unsigned long * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned long tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j)
{
unsigned long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ulong_reverse (gsl_vector_ulong * v)
{
unsigned long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 44 "swap.c" 2
# 1 "../templates_off.h" 1
# 45 "swap.c" 2
# 1 "../templates_on.h" 1
# 49 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w)
{
long * d1 = v->data ;
long * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
long tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j)
{
long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_reverse (gsl_vector_long * v)
{
long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 50 "swap.c" 2
# 1 "../templates_off.h" 1
# 51 "swap.c" 2
# 1 "../templates_on.h" 1
# 55 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w)
{
unsigned int * d1 = v->data ;
unsigned int * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned int tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j)
{
unsigned int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uint_reverse (gsl_vector_uint * v)
{
unsigned int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 56 "swap.c" 2
# 1 "../templates_off.h" 1
# 57 "swap.c" 2
# 1 "../templates_on.h" 1
# 61 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w)
{
int * d1 = v->data ;
int * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
int tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j)
{
int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_int_reverse (gsl_vector_int * v)
{
int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 62 "swap.c" 2
# 1 "../templates_off.h" 1
# 63 "swap.c" 2
# 1 "../templates_on.h" 1
# 67 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w)
{
unsigned short * d1 = v->data ;
unsigned short * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned short tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j)
{
unsigned short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ushort_reverse (gsl_vector_ushort * v)
{
unsigned short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 68 "swap.c" 2
# 1 "../templates_off.h" 1
# 69 "swap.c" 2
# 1 "../templates_on.h" 1
# 73 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w)
{
short * d1 = v->data ;
short * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
short tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j)
{
short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_short_reverse (gsl_vector_short * v)
{
short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 74 "swap.c" 2
# 1 "../templates_off.h" 1
# 75 "swap.c" 2
# 1 "../templates_on.h" 1
# 79 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w)
{
unsigned char * d1 = v->data ;
unsigned char * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned char tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j)
{
unsigned char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uchar_reverse (gsl_vector_uchar * v)
{
unsigned char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 80 "swap.c" 2
# 1 "../templates_off.h" 1
# 81 "swap.c" 2
# 1 "../templates_on.h" 1
# 85 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w)
{
char * d1 = v->data ;
char * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
char tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j)
{
char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_char_reverse (gsl_vector_char * v)
{
char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 86 "swap.c" 2
# 1 "../templates_off.h" 1
# 87 "swap.c" 2
--0-18757205-1050096195=:13710--
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 21:26 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-11 21:26 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: ebotcazou@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Fri, 11 Apr 2003 14:19:29 -0700 (PDT)
--0-932975068-1050095969=:88333
Content-Type: text/plain; charset=us-ascii
Content-Id:
Content-Disposition: inline
Sending again
-------------------
I am sending you missed file and shell script I wrote
to do tests you suggested.
Results of tests is following:
-O0 -O0 : LOG0:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O2 -O0 : LOG1:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O0 -O2 : LOG2:FAIL:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O0 : LOG3:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O1 : LOG4:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O2 : LOG5:FAIL:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
Which means that test failed if -O2 or combination -O0
-O2 were used. In other cases it's compiled correctly.
Be advised that function causing trouble is:
swap.i:3912
gsl_vector_complex_float_swap_elements(...)
--- ebotcazou@gcc.gnu.org wrote:
> Synopsis: Seems like bug in code generator on Sun
> Sparc (Sol;aris 8) platform
>
> State-Changed-From-To: open->feedback
> State-Changed-By: ebotcazou
> State-Changed-When: Fri Apr 11 09:02:04 2003
> State-Changed-Why:
> Hum... the file you sent only contains the test,
> not the
> function that is being tested. You need to
> determine which one is miscompiled: compile with
> (-O0, -O0) then (-O2, -O0)
> and (-O0, -O2) and verify each time if the test
> pass.
>
>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
--0-932975068-1050095969=:88333
Content-Type: text/plain; name="compile-swap.sh"
Content-Description: compile-swap.sh
Content-Disposition: inline; filename="compile-swap.sh"
#!/bin/sh
OPT0='-O0 -O0'
OPT1='-O2 -O0'
OPT2='-O0 -O2'
OPT3='-O0'
OPT4='-O1'
OPT5='-O2'
OPT=$OPT0
LVL=0
case $1 in
0) OPT=$OPT0
LVL=0 ;;
1) OPT=$OPT1
LVL=1 ;;
2) OPT=$OPT2
LVL=2 ;;
3) OPT=$OPT3
LVL=3 ;;
4) OPT=$OPT4
LVL=4 ;;
5) OPT=$OPT5
LVL=5 ;;
*) echo "Optimization level must be 0 or 1 or 2 or 3 or 4 or 5. Default is used"
esac
echo "Optimization level: " $OPT
rm -f .libs/swap.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c swap.c -fPIC -DPIC -o .libs/swap.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c swap.c -o swap.o >/dev/null 2>&1
mv -f .libs/swap.lo swap.lo
/bin/sh ../libtool --mode=link gcc -g -O2 -o libgslvector.la init.lo file.lo vector.lo copy.lo swap.lo prop.lo minmax.lo oper.lo reim.lo subvector.lo view.lo -lm
rm test_static.o
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c test_static.c
/bin/sh ../libtool --mode=link gcc -g $OPT -o test_static test_static.o libgslvector.la ../block/libgslblock.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la -lm
ls -al test_static.o test_static
./test_static > LOG$LVL
ls -al LOG$LVL
--0-932975068-1050095969=:88333
Content-Type: text/plain; name="swap.i"
Content-Description: swap.i
Content-Disposition: inline; filename="swap.i"
# 1 "swap.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "swap.c"
# 1 "../config.h" 1
# 2 "swap.c" 2
# 1 "../gsl/gsl_errno.h" 1
# 23 "../gsl/gsl_errno.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 36 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 22 "/usr/include/stdio_impl.h" 3 4
typedef int ssize_t;
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
typedef unsigned int size_t;
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 105 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef long off_t;
typedef __longlong_t off64_t;
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 24 "../gsl/gsl_errno.h" 2
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 1 "../gsl/gsl_types.h" 1
# 26 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 3 "swap.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 23 "../gsl/gsl_vector_complex_long_double.h"
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 144 "/usr/include/stdlib.h" 3 4
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 24 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
extern inline
long double
gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x)
{
v->data[i * v->stride] = x;
}
extern inline
long double *
gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i)
{
return (long double *) (v->data + i * v->stride);
}
extern inline
const long double *
gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i)
{
return (const long double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
extern inline
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v,
const size_t i)
{
return *((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v,
const size_t i, gsl_complex_long_double z)
{
*((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_long_double *
gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v,
const size_t i)
{
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_long_double *
gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v,
const size_t i)
{
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
extern inline
double
gsl_vector_get (const gsl_vector * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_set (gsl_vector * v, const size_t i, double x)
{
v->data[i * v->stride] = x;
}
extern inline
double *
gsl_vector_ptr (gsl_vector * v, const size_t i)
{
return (double *) (v->data + i * v->stride);
}
extern inline
const double *
gsl_vector_const_ptr (const gsl_vector * v, const size_t i)
{
return (const double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
extern inline
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v,
const size_t i)
{
return *((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_set (gsl_vector_complex * v,
const size_t i, gsl_complex z)
{
*((gsl_complex*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex *
gsl_vector_complex_ptr (gsl_vector_complex * v,
const size_t i)
{
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex *
gsl_vector_complex_const_ptr (const gsl_vector_complex * v,
const size_t i)
{
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
extern inline
float
gsl_vector_float_get (const gsl_vector_float * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x)
{
v->data[i * v->stride] = x;
}
extern inline
float *
gsl_vector_float_ptr (gsl_vector_float * v, const size_t i)
{
return (float *) (v->data + i * v->stride);
}
extern inline
const float *
gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i)
{
return (const float *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
extern inline
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v,
const size_t i)
{
return *((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_float_set (gsl_vector_complex_float * v,
const size_t i, gsl_complex_float z)
{
*((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_float *
gsl_vector_complex_float_ptr (gsl_vector_complex_float * v,
const size_t i)
{
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_float *
gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v,
const size_t i)
{
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
extern inline
unsigned long
gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned long *
gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i)
{
return (unsigned long *) (v->data + i * v->stride);
}
extern inline
const unsigned long *
gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i)
{
return (const unsigned long *) (v->data + i * v->stride);
}
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
extern inline
long
gsl_vector_long_get (const gsl_vector_long * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x)
{
v->data[i * v->stride] = x;
}
extern inline
long *
gsl_vector_long_ptr (gsl_vector_long * v, const size_t i)
{
return (long *) (v->data + i * v->stride);
}
extern inline
const long *
gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i)
{
return (const long *) (v->data + i * v->stride);
}
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
extern inline
unsigned int
gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned int *
gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i)
{
return (unsigned int *) (v->data + i * v->stride);
}
extern inline
const unsigned int *
gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i)
{
return (const unsigned int *) (v->data + i * v->stride);
}
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
extern inline
int
gsl_vector_int_get (const gsl_vector_int * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x)
{
v->data[i * v->stride] = x;
}
extern inline
int *
gsl_vector_int_ptr (gsl_vector_int * v, const size_t i)
{
return (int *) (v->data + i * v->stride);
}
extern inline
const int *
gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i)
{
return (const int *) (v->data + i * v->stride);
}
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
extern inline
unsigned short
gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned short *
gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i)
{
return (unsigned short *) (v->data + i * v->stride);
}
extern inline
const unsigned short *
gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i)
{
return (const unsigned short *) (v->data + i * v->stride);
}
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
extern inline
short
gsl_vector_short_get (const gsl_vector_short * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x)
{
v->data[i * v->stride] = x;
}
extern inline
short *
gsl_vector_short_ptr (gsl_vector_short * v, const size_t i)
{
return (short *) (v->data + i * v->stride);
}
extern inline
const short *
gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i)
{
return (const short *) (v->data + i * v->stride);
}
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
extern inline
unsigned char
gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned char *
gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i)
{
return (unsigned char *) (v->data + i * v->stride);
}
extern inline
const unsigned char *
gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i)
{
return (const unsigned char *) (v->data + i * v->stride);
}
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
extern inline
char
gsl_vector_char_get (const gsl_vector_char * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x)
{
v->data[i * v->stride] = x;
}
extern inline
char *
gsl_vector_char_ptr (gsl_vector_char * v, const size_t i)
{
return (char *) (v->data + i * v->stride);
}
extern inline
const char *
gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i)
{
return (const char *) (v->data + i * v->stride);
}
# 23 "../gsl/gsl_vector.h" 2
# 4 "swap.c" 2
# 1 "../templates_on.h" 1
# 7 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w)
{
long double * d1 = v->data ;
long double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
long double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 8 "swap.c" 2
# 1 "../templates_off.h" 1
# 9 "swap.c" 2
# 1 "../templates_on.h" 1
# 13 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w)
{
double * d1 = v->data ;
double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_reverse (gsl_vector_complex * v)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 14 "swap.c" 2
# 1 "../templates_off.h" 1
# 15 "swap.c" 2
# 1 "../templates_on.h" 1
# 19 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w)
{
float * d1 = v->data ;
float * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
float tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_float_reverse (gsl_vector_complex_float * v)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 20 "swap.c" 2
# 1 "../templates_off.h" 1
# 21 "swap.c" 2
# 1 "../templates_on.h" 1
# 25 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w)
{
long double * d1 = v->data ;
long double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
long double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_double_reverse (gsl_vector_long_double * v)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 26 "swap.c" 2
# 1 "../templates_off.h" 1
# 27 "swap.c" 2
# 1 "../templates_on.h" 1
# 31 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_swap (gsl_vector * v, gsl_vector * w)
{
double * d1 = v->data ;
double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_reverse (gsl_vector * v)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 32 "swap.c" 2
# 1 "../templates_off.h" 1
# 33 "swap.c" 2
# 1 "../templates_on.h" 1
# 37 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w)
{
float * d1 = v->data ;
float * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
float tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_float_reverse (gsl_vector_float * v)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 38 "swap.c" 2
# 1 "../templates_off.h" 1
# 39 "swap.c" 2
# 1 "../templates_on.h" 1
# 43 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w)
{
unsigned long * d1 = v->data ;
unsigned long * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned long tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j)
{
unsigned long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ulong_reverse (gsl_vector_ulong * v)
{
unsigned long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 44 "swap.c" 2
# 1 "../templates_off.h" 1
# 45 "swap.c" 2
# 1 "../templates_on.h" 1
# 49 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w)
{
long * d1 = v->data ;
long * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
long tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j)
{
long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_reverse (gsl_vector_long * v)
{
long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 50 "swap.c" 2
# 1 "../templates_off.h" 1
# 51 "swap.c" 2
# 1 "../templates_on.h" 1
# 55 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w)
{
unsigned int * d1 = v->data ;
unsigned int * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned int tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j)
{
unsigned int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uint_reverse (gsl_vector_uint * v)
{
unsigned int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 56 "swap.c" 2
# 1 "../templates_off.h" 1
# 57 "swap.c" 2
# 1 "../templates_on.h" 1
# 61 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w)
{
int * d1 = v->data ;
int * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
int tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j)
{
int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_int_reverse (gsl_vector_int * v)
{
int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 62 "swap.c" 2
# 1 "../templates_off.h" 1
# 63 "swap.c" 2
# 1 "../templates_on.h" 1
# 67 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w)
{
unsigned short * d1 = v->data ;
unsigned short * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned short tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j)
{
unsigned short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ushort_reverse (gsl_vector_ushort * v)
{
unsigned short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 68 "swap.c" 2
# 1 "../templates_off.h" 1
# 69 "swap.c" 2
# 1 "../templates_on.h" 1
# 73 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w)
{
short * d1 = v->data ;
short * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
short tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j)
{
short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_short_reverse (gsl_vector_short * v)
{
short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 74 "swap.c" 2
# 1 "../templates_off.h" 1
# 75 "swap.c" 2
# 1 "../templates_on.h" 1
# 79 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w)
{
unsigned char * d1 = v->data ;
unsigned char * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned char tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j)
{
unsigned char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uchar_reverse (gsl_vector_uchar * v)
{
unsigned char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 80 "swap.c" 2
# 1 "../templates_off.h" 1
# 81 "swap.c" 2
# 1 "../templates_on.h" 1
# 85 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w)
{
char * d1 = v->data ;
char * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
char tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j)
{
char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_char_reverse (gsl_vector_char * v)
{
char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 86 "swap.c" 2
# 1 "../templates_off.h" 1
# 87 "swap.c" 2
--0-932975068-1050095969=:88333--
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 21:16 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-11 21:16 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: ebotcazou@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Fri, 11 Apr 2003 14:15:13 -0700 (PDT)
--0-1572554341-1050095713=:82040
Content-Type: text/plain; charset=us-ascii
Content-Id:
Content-Disposition: inline
I am sending you missed file and shell script I wrote
to do tests you suggested.
Results of tests is following:
-O0 -O0 : LOG0:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O2 -O0 : LOG1:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O0 -O2 : LOG2:FAIL:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O0 : LOG3:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O1 : LOG4:PASS:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
-O2 : LOG5:FAIL:
gsl_vector_complex_float_swap_elements (static)
exchanges elements
Which means that test failed if -O2 or combination -O0
-O2 were used. In other cases it's compiled correctly.
Be advised that function causing trouble is:
swap.i:3912
gsl_vector_complex_float_swap_elements(...)
Could you do me a favor giving a hint about that
combination of optimization flags. I did not find
description of it. Just an idea or reference to
manual?
Regards,
Yuri
--- ebotcazou@gcc.gnu.org wrote:
> Synopsis: Seems like bug in code generator on Sun
> Sparc (Sol;aris 8) platform
>
> State-Changed-From-To: open->feedback
> State-Changed-By: ebotcazou
> State-Changed-When: Fri Apr 11 09:02:04 2003
> State-Changed-Why:
> Hum... the file you sent only contains the test,
> not the
> function that is being tested. You need to
> determine which one is miscompiled: compile with
> (-O0, -O0) then (-O2, -O0)
> and (-O0, -O2) and verify each time if the test
> pass.
>
>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
--0-1572554341-1050095713=:82040
Content-Type: text/plain; name="swap.i"
Content-Description: swap.i
Content-Disposition: inline; filename="swap.i"
# 1 "swap.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "swap.c"
# 1 "../config.h" 1
# 2 "swap.c" 2
# 1 "../gsl/gsl_errno.h" 1
# 23 "../gsl/gsl_errno.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 36 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 22 "/usr/include/stdio_impl.h" 3 4
typedef int ssize_t;
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
typedef unsigned int size_t;
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 105 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef long off_t;
typedef __longlong_t off64_t;
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 24 "../gsl/gsl_errno.h" 2
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 1 "../gsl/gsl_types.h" 1
# 26 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 3 "swap.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 23 "../gsl/gsl_vector_complex_long_double.h"
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 144 "/usr/include/stdlib.h" 3 4
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 24 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
extern inline
long double
gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x)
{
v->data[i * v->stride] = x;
}
extern inline
long double *
gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i)
{
return (long double *) (v->data + i * v->stride);
}
extern inline
const long double *
gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i)
{
return (const long double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
extern inline
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v,
const size_t i)
{
return *((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v,
const size_t i, gsl_complex_long_double z)
{
*((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_long_double *
gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v,
const size_t i)
{
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_long_double *
gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v,
const size_t i)
{
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
extern inline
double
gsl_vector_get (const gsl_vector * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_set (gsl_vector * v, const size_t i, double x)
{
v->data[i * v->stride] = x;
}
extern inline
double *
gsl_vector_ptr (gsl_vector * v, const size_t i)
{
return (double *) (v->data + i * v->stride);
}
extern inline
const double *
gsl_vector_const_ptr (const gsl_vector * v, const size_t i)
{
return (const double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
extern inline
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v,
const size_t i)
{
return *((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_set (gsl_vector_complex * v,
const size_t i, gsl_complex z)
{
*((gsl_complex*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex *
gsl_vector_complex_ptr (gsl_vector_complex * v,
const size_t i)
{
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex *
gsl_vector_complex_const_ptr (const gsl_vector_complex * v,
const size_t i)
{
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
extern inline
float
gsl_vector_float_get (const gsl_vector_float * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x)
{
v->data[i * v->stride] = x;
}
extern inline
float *
gsl_vector_float_ptr (gsl_vector_float * v, const size_t i)
{
return (float *) (v->data + i * v->stride);
}
extern inline
const float *
gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i)
{
return (const float *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
extern inline
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v,
const size_t i)
{
return *((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_float_set (gsl_vector_complex_float * v,
const size_t i, gsl_complex_float z)
{
*((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_float *
gsl_vector_complex_float_ptr (gsl_vector_complex_float * v,
const size_t i)
{
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_float *
gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v,
const size_t i)
{
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
extern inline
unsigned long
gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned long *
gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i)
{
return (unsigned long *) (v->data + i * v->stride);
}
extern inline
const unsigned long *
gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i)
{
return (const unsigned long *) (v->data + i * v->stride);
}
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
extern inline
long
gsl_vector_long_get (const gsl_vector_long * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x)
{
v->data[i * v->stride] = x;
}
extern inline
long *
gsl_vector_long_ptr (gsl_vector_long * v, const size_t i)
{
return (long *) (v->data + i * v->stride);
}
extern inline
const long *
gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i)
{
return (const long *) (v->data + i * v->stride);
}
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
extern inline
unsigned int
gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned int *
gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i)
{
return (unsigned int *) (v->data + i * v->stride);
}
extern inline
const unsigned int *
gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i)
{
return (const unsigned int *) (v->data + i * v->stride);
}
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
extern inline
int
gsl_vector_int_get (const gsl_vector_int * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x)
{
v->data[i * v->stride] = x;
}
extern inline
int *
gsl_vector_int_ptr (gsl_vector_int * v, const size_t i)
{
return (int *) (v->data + i * v->stride);
}
extern inline
const int *
gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i)
{
return (const int *) (v->data + i * v->stride);
}
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
extern inline
unsigned short
gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned short *
gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i)
{
return (unsigned short *) (v->data + i * v->stride);
}
extern inline
const unsigned short *
gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i)
{
return (const unsigned short *) (v->data + i * v->stride);
}
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
extern inline
short
gsl_vector_short_get (const gsl_vector_short * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x)
{
v->data[i * v->stride] = x;
}
extern inline
short *
gsl_vector_short_ptr (gsl_vector_short * v, const size_t i)
{
return (short *) (v->data + i * v->stride);
}
extern inline
const short *
gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i)
{
return (const short *) (v->data + i * v->stride);
}
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
extern inline
unsigned char
gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x)
{
v->data[i * v->stride] = x;
}
extern inline
unsigned char *
gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i)
{
return (unsigned char *) (v->data + i * v->stride);
}
extern inline
const unsigned char *
gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i)
{
return (const unsigned char *) (v->data + i * v->stride);
}
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
extern inline
char
gsl_vector_char_get (const gsl_vector_char * v, const size_t i)
{
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x)
{
v->data[i * v->stride] = x;
}
extern inline
char *
gsl_vector_char_ptr (gsl_vector_char * v, const size_t i)
{
return (char *) (v->data + i * v->stride);
}
extern inline
const char *
gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i)
{
return (const char *) (v->data + i * v->stride);
}
# 23 "../gsl/gsl_vector.h" 2
# 4 "swap.c" 2
# 1 "../templates_on.h" 1
# 7 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w)
{
long double * d1 = v->data ;
long double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
long double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 8 "swap.c" 2
# 1 "../templates_off.h" 1
# 9 "swap.c" 2
# 1 "../templates_on.h" 1
# 13 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w)
{
double * d1 = v->data ;
double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_reverse (gsl_vector_complex * v)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 14 "swap.c" 2
# 1 "../templates_off.h" 1
# 15 "swap.c" 2
# 1 "../templates_on.h" 1
# 19 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w)
{
float * d1 = v->data ;
float * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 2 * v->stride ;
const size_t s2 = 2 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 2; k++)
{
float tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_complex_float_reverse (gsl_vector_complex_float * v)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 2 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 20 "swap.c" 2
# 1 "../templates_off.h" 1
# 21 "swap.c" 2
# 1 "../templates_on.h" 1
# 25 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w)
{
long double * d1 = v->data ;
long double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
long double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_double_reverse (gsl_vector_long_double * v)
{
long double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
long double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 26 "swap.c" 2
# 1 "../templates_off.h" 1
# 27 "swap.c" 2
# 1 "../templates_on.h" 1
# 31 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_swap (gsl_vector * v, gsl_vector * w)
{
double * d1 = v->data ;
double * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
double tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_reverse (gsl_vector * v)
{
double * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
double tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 32 "swap.c" 2
# 1 "../templates_off.h" 1
# 33 "swap.c" 2
# 1 "../templates_on.h" 1
# 37 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w)
{
float * d1 = v->data ;
float * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
float tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_float_reverse (gsl_vector_float * v)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 38 "swap.c" 2
# 1 "../templates_off.h" 1
# 39 "swap.c" 2
# 1 "../templates_on.h" 1
# 43 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w)
{
unsigned long * d1 = v->data ;
unsigned long * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned long tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j)
{
unsigned long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ulong_reverse (gsl_vector_ulong * v)
{
unsigned long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 44 "swap.c" 2
# 1 "../templates_off.h" 1
# 45 "swap.c" 2
# 1 "../templates_on.h" 1
# 49 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w)
{
long * d1 = v->data ;
long * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
long tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j)
{
long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_long_reverse (gsl_vector_long * v)
{
long * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
long tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 50 "swap.c" 2
# 1 "../templates_off.h" 1
# 51 "swap.c" 2
# 1 "../templates_on.h" 1
# 55 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w)
{
unsigned int * d1 = v->data ;
unsigned int * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned int tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j)
{
unsigned int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uint_reverse (gsl_vector_uint * v)
{
unsigned int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 56 "swap.c" 2
# 1 "../templates_off.h" 1
# 57 "swap.c" 2
# 1 "../templates_on.h" 1
# 61 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w)
{
int * d1 = v->data ;
int * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
int tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j)
{
int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_int_reverse (gsl_vector_int * v)
{
int * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
int tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 62 "swap.c" 2
# 1 "../templates_off.h" 1
# 63 "swap.c" 2
# 1 "../templates_on.h" 1
# 67 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w)
{
unsigned short * d1 = v->data ;
unsigned short * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned short tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j)
{
unsigned short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_ushort_reverse (gsl_vector_ushort * v)
{
unsigned short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 68 "swap.c" 2
# 1 "../templates_off.h" 1
# 69 "swap.c" 2
# 1 "../templates_on.h" 1
# 73 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w)
{
short * d1 = v->data ;
short * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
short tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j)
{
short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_short_reverse (gsl_vector_short * v)
{
short * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
short tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 74 "swap.c" 2
# 1 "../templates_off.h" 1
# 75 "swap.c" 2
# 1 "../templates_on.h" 1
# 79 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w)
{
unsigned char * d1 = v->data ;
unsigned char * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
unsigned char tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j)
{
unsigned char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
unsigned char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_uchar_reverse (gsl_vector_uchar * v)
{
unsigned char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
unsigned char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 80 "swap.c" 2
# 1 "../templates_off.h" 1
# 81 "swap.c" 2
# 1 "../templates_on.h" 1
# 85 "swap.c" 2
# 1 "swap_source.c" 1
# 20 "swap_source.c"
int
gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w)
{
char * d1 = v->data ;
char * d2 = w->data ;
const size_t size = v->size ;
const size_t s1 = 1 * v->stride ;
const size_t s2 = 1 * v->stride ;
size_t i, k ;
if (v->size != w->size)
{
do { gsl_error ("vector lengths must be equal", "swap_source.c", 32, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
for (i = 0; i < size; i++)
{
for (k = 0; k < 1; k++)
{
char tmp = d1[i*s1 + k];
d1[i*s1+k] = d2[i*s2 + k];
d2[i*s2+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j)
{
char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "swap_source.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "swap_source.c", 62, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 1 * stride ;
size_t k ;
for (k = 0; k < 1; k++)
{
char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
int
gsl_vector_char_reverse (gsl_vector_char * v)
{
char * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
const size_t s = 1 * stride ;
size_t i ;
for (i = 0 ; i < (size / 2) ; i++)
{
size_t j = size - i - 1 ;
size_t k;
for (k = 0; k < 1; k++)
{
char tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
# 86 "swap.c" 2
# 1 "../templates_off.h" 1
# 87 "swap.c" 2
--0-1572554341-1050095713=:82040
Content-Type: text/plain; name="compile-swap.sh"
Content-Description: compile-swap.sh
Content-Disposition: inline; filename="compile-swap.sh"
#!/bin/sh
OPT0='-O0 -O0'
OPT1='-O2 -O0'
OPT2='-O0 -O2'
OPT3='-O0'
OPT4='-O1'
OPT5='-O2'
OPT=$OPT0
LVL=0
case $1 in
0) OPT=$OPT0
LVL=0 ;;
1) OPT=$OPT1
LVL=1 ;;
2) OPT=$OPT2
LVL=2 ;;
3) OPT=$OPT3
LVL=3 ;;
4) OPT=$OPT4
LVL=4 ;;
5) OPT=$OPT5
LVL=5 ;;
*) echo "Optimization level must be 0 or 1 or 2 or 3 or 4 or 5. Default is used"
esac
echo "Optimization level: " $OPT
rm -f .libs/swap.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c swap.c -fPIC -DPIC -o .libs/swap.lo
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c swap.c -o swap.o >/dev/null 2>&1
mv -f .libs/swap.lo swap.lo
/bin/sh ../libtool --mode=link gcc -g -O2 -o libgslvector.la init.lo file.lo vector.lo copy.lo swap.lo prop.lo minmax.lo oper.lo reim.lo subvector.lo view.lo -lm
rm test_static.o
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g $OPT -c test_static.c
/bin/sh ../libtool --mode=link gcc -g $OPT -o test_static test_static.o libgslvector.la ../block/libgslblock.la ../ieee-utils/libgslieeeutils.la ../err/libgslerr.la ../test/libgsltest.la ../utils/libutils.la -lm
ls -al test_static.o test_static
./test_static > LOG$LVL
ls -al LOG$LVL
--0-1572554341-1050095713=:82040--
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 9:02 ebotcazou
0 siblings, 0 replies; 15+ messages in thread
From: ebotcazou @ 2003-04-11 9:02 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, urazov
Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
State-Changed-From-To: open->feedback
State-Changed-By: ebotcazou
State-Changed-When: Fri Apr 11 09:02:04 2003
State-Changed-Why:
Hum... the file you sent only contains the test, not the
function that is being tested. You need to determine which one is miscompiled: compile with (-O0, -O0) then (-O2, -O0)
and (-O0, -O2) and verify each time if the test pass.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 8:38 ebotcazou
0 siblings, 0 replies; 15+ messages in thread
From: ebotcazou @ 2003-04-11 8:38 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, urazov
Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
State-Changed-From-To: analyzed->open
State-Changed-By: ebotcazou
State-Changed-When: Fri Apr 11 08:38:09 2003
State-Changed-Why:
I really meant open :-)
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-11 8:37 ebotcazou
0 siblings, 0 replies; 15+ messages in thread
From: ebotcazou @ 2003-04-11 8:37 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, urazov
Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
State-Changed-From-To: feedback->analyzed
State-Changed-By: ebotcazou
State-Changed-When: Fri Apr 11 08:36:59 2003
State-Changed-Why:
Feedback received: the testcase is compiled with -O2.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-10 7:06 Eric Botcazou
0 siblings, 0 replies; 15+ messages in thread
From: Eric Botcazou @ 2003-04-10 7:06 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Eric Botcazou <ebotcazou@libertysurf.fr>
To: Yuri Urazov <urazov@yahoo.com>
Cc: bangerth@dealii.org,
gcc-bugs@gcc.gnu.org,
nobody@gcc.gnu.org,
gcc-gnats@gcc.gnu.org
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Thu, 10 Apr 2003 09:05:59 +0200
> I am sending the files again. If this is not what you
> expected I apologize that I am that stupid and ask you
> to send me a list of what you want.
You didn't specify which options you use to compile the file.
--
Eric Botcazou
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-09 22:36 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-09 22:36 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: bangerth@dealii.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Wed, 9 Apr 2003 15:34:47 -0700 (PDT)
--0-950081385-1049927687=:98732
Content-Type: text/plain; charset=us-ascii
Content-Id:
Content-Disposition: inline
I am resending those .i files individually
---------------------------
I have attached two .i files in original filing,
actually they are in ifiles.tar.gz
I am sending the files again. If this is not what you
expected I apologize that I am that stupid and ask you
to send me a list of what you want.
Regards,
Yuri
--- bangerth@dealii.org wrote:
> Synopsis: Seems like bug in code generator on Sun
> Sparc (Sol;aris 8) platform
>
> State-Changed-From-To: open->feedback
> State-Changed-By: bangerth
> State-Changed-When: Wed Apr 9 21:01:00 2003
> State-Changed-Why:
> We need some preprocessed sources to reproduce
> the problem.
> Please review
> http://gcc.gnu.org/bugs.html
> to see what exactly we need.
>
> Regards
> Wolfgang
>
>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
--0-950081385-1049927687=:98732
Content-Type: text/plain; name="test_static.i"
Content-Description: test_static.i
Content-Disposition: inline; filename="test_static.i"
# 1 "test_static.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "test_static.c"
# 1 "test.c" 1
# 20 "test.c"
# 1 "../config.h" 1
# 21 "test.c" 2
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 40 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 2 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
typedef unsigned int size_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 140 "/usr/include/stdlib.h" 3 4
typedef int ssize_t;
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 27 "test.c" 2
# 1 "/usr/include/fcntl.h" 1 3 4
# 16 "/usr/include/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.14 97/12/05 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
#pragma ident "@(#)types.h 1.68 02/06/10 SMI"
# 1 "/usr/include/sys/machtypes.h" 1 3 4
# 16 "/usr/include/sys/machtypes.h" 3 4
#pragma ident "@(#)machtypes.h 1.13 99/05/04 SMI"
# 33 "/usr/include/sys/machtypes.h" 3 4
typedef struct _label_t { long val[2]; } label_t;
typedef unsigned char lock_t;
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 45 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
# 1 "/usr/include/sys/int_types.h" 1 3 4
# 9 "/usr/include/sys/int_types.h" 3 4
#pragma ident "@(#)int_types.h 1.6 97/08/20 SMI"
# 62 "/usr/include/sys/int_types.h" 3 4
typedef char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef long long int64_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
# 94 "/usr/include/sys/int_types.h" 3 4
typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
# 110 "/usr/include/sys/int_types.h" 3 4
typedef int intptr_t;
typedef unsigned int uintptr_t;
typedef char int_least8_t;
typedef short int_least16_t;
typedef int int_least32_t;
typedef long long int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned long long uint_least64_t;
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long long longlong_t;
typedef unsigned long long u_longlong_t;
# 85 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long t_scalar_t;
typedef unsigned long t_uscalar_t;
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef char *caddr_t;
typedef long daddr_t;
typedef short cnt_t;
typedef ulong_t paddr_t;
# 118 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int ptrdiff_t;
# 127 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t pfn_t;
typedef ulong_t pgcnt_t;
typedef long spgcnt_t;
typedef uchar_t use_t;
typedef short sysid_t;
typedef short index_t;
typedef void *timeout_id_t;
typedef void *bufcall_id_t;
# 149 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long off_t;
# 158 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t off64_t;
typedef ulong_t ino_t;
typedef long blkcnt_t;
typedef ulong_t fsblkcnt_t;
typedef ulong_t fsfilcnt_t;
# 183 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef u_longlong_t ino64_t;
typedef longlong_t blkcnt64_t;
typedef u_longlong_t fsblkcnt64_t;
typedef u_longlong_t fsfilcnt64_t;
typedef long blksize_t;
typedef enum { B_FALSE, B_TRUE } boolean_t;
# 210 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int64_t pad64_t;
typedef uint64_t upad64_t;
# 223 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t offset_t;
typedef u_longlong_t u_offset_t;
typedef u_longlong_t len_t;
typedef longlong_t diskaddr_t;
# 244 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
offset_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lloff_t;
# 264 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
diskaddr_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lldaddr_t;
typedef uint_t k_fltset_t;
# 287 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long id_t;
typedef uint_t useconds_t;
typedef long suseconds_t;
# 308 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t major_t;
typedef ulong_t minor_t;
typedef short pri_t;
# 328 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ushort_t o_mode_t;
typedef short o_dev_t;
typedef ushort_t o_uid_t;
typedef o_uid_t o_gid_t;
typedef short o_nlink_t;
typedef short o_pid_t;
typedef ushort_t o_ino_t;
typedef int key_t;
typedef ulong_t mode_t;
# 356 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef uid_t gid_t;
typedef id_t taskid_t;
typedef id_t projid_t;
typedef uint_t pthread_t;
typedef uint_t pthread_key_t;
typedef struct _pthread_mutex {
struct {
uint16_t __pthread_mutex_flag1;
uint8_t __pthread_mutex_flag2;
uint8_t __pthread_mutex_ceiling;
uint16_t __pthread_mutex_type;
uint16_t __pthread_mutex_magic;
} __pthread_mutex_flags;
union {
struct {
uint8_t __pthread_mutex_pad[8];
} __pthread_mutex_lock64;
struct {
uint32_t __pthread_ownerpid;
uint32_t __pthread_lockword;
} __pthread_mutex_lock32;
upad64_t __pthread_mutex_owner64;
} __pthread_mutex_lock;
upad64_t __pthread_mutex_data;
} pthread_mutex_t;
typedef struct _pthread_cond {
struct {
uint8_t __pthread_cond_flag[4];
uint16_t __pthread_cond_type;
uint16_t __pthread_cond_magic;
} __pthread_cond_flags;
upad64_t __pthread_cond_data;
} pthread_cond_t;
typedef struct _pthread_rwlock {
int32_t __pthread_rwlock_readers;
uint16_t __pthread_rwlock_type;
uint16_t __pthread_rwlock_magic;
upad64_t __pthread_rwlock_pad1[3];
upad64_t __pthread_rwlock_pad2[2];
upad64_t __pthread_rwlock_pad3[2];
} pthread_rwlock_t;
typedef struct _pthread_attr {
void *__pthread_attrp;
} pthread_attr_t;
typedef struct _pthread_mutexattr {
void *__pthread_mutexattrp;
} pthread_mutexattr_t;
typedef struct _pthread_condattr {
void *__pthread_condattrp;
} pthread_condattr_t;
typedef struct _once {
upad64_t __pthread_once_pad[4];
} pthread_once_t;
typedef struct _pthread_rwlockattr {
void *__pthread_rwlockattrp;
} pthread_rwlockattr_t;
typedef ulong_t dev_t;
typedef ulong_t nlink_t;
typedef long pid_t;
# 485 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long time_t;
typedef long clock_t;
typedef int clockid_t;
typedef int timer_t;
typedef unsigned char unchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
# 561 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef struct _quad { int val[2]; } quad_t;
typedef quad_t quad;
# 1 "/usr/include/sys/select.h" 1 3 4
# 12 "/usr/include/sys/select.h" 3 4
#pragma ident "@(#)select.h 1.16 98/04/27 SMI"
# 1 "/usr/include/sys/time.h" 1 3 4
# 22 "/usr/include/sys/time.h" 3 4
#pragma ident "@(#)time.h 2.66 01/01/17 SMI"
# 49 "/usr/include/sys/time.h" 3 4
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
# 82 "/usr/include/sys/time.h" 3 4
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
# 100 "/usr/include/sys/time.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 101 "/usr/include/sys/time.h" 2 3 4
# 155 "/usr/include/sys/time.h" 3 4
struct itimerval {
struct timeval it_interval;
struct timeval it_value;
};
# 203 "/usr/include/sys/time.h" 3 4
typedef longlong_t hrtime_t;
# 320 "/usr/include/sys/time.h" 3 4
int adjtime(struct timeval *, struct timeval *);
# 331 "/usr/include/sys/time.h" 3 4
int getitimer(int, struct itimerval *);
int utimes(const char *, const struct timeval *);
int setitimer(int, struct itimerval *, struct itimerval *);
# 369 "/usr/include/sys/time.h" 3 4
int settimeofday(struct timeval *, void *);
hrtime_t gethrtime(void);
hrtime_t gethrvtime(void);
# 389 "/usr/include/sys/time.h" 3 4
int gettimeofday(struct timeval *, void *);
# 410 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 16 "/usr/include/time.h" 3 4
#pragma ident "@(#)time.h 1.39 99/08/10 SMI"
# 1 "/usr/include/iso/time_iso.h" 1 3 4
# 28 "/usr/include/iso/time_iso.h" 3 4
#pragma ident "@(#)time_iso.h 1.1 99/08/09 SMI"
# 69 "/usr/include/iso/time_iso.h" 3 4
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
extern char *asctime(const struct tm *);
extern clock_t clock(void);
extern char *ctime(const time_t *);
extern double difftime(time_t, time_t);
extern struct tm *gmtime(const time_t *);
extern struct tm *localtime(const time_t *);
extern time_t mktime(struct tm *);
extern time_t time(time_t *);
extern size_t strftime(char *, size_t, const char *, const struct tm *);
# 21 "/usr/include/time.h" 2 3 4
# 67 "/usr/include/time.h" 3 4
extern char *strptime(const char *, const char *, struct tm *);
# 83 "/usr/include/time.h" 3 4
# 1 "/usr/include/sys/time_impl.h" 1 3 4
# 15 "/usr/include/sys/time_impl.h" 3 4
#pragma ident "@(#)time_impl.h 1.5 99/10/05 SMI"
# 36 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec {
time_t tv_sec;
long tv_nsec;
} timespec_t;
# 60 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec timestruc_t;
# 79 "/usr/include/sys/time_impl.h" 3 4
typedef struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
} itimerspec_t;
# 84 "/usr/include/time.h" 2 3 4
# 98 "/usr/include/time.h" 3 4
union sigval {
int sival_int;
void *sival_ptr;
};
struct sigevent {
int sigev_notify;
int sigev_signo;
union sigval sigev_value;
void (*sigev_notify_function)(union sigval);
pthread_attr_t *sigev_notify_attributes;
int __sigev_pad2;
};
extern int clock_getres(clockid_t, struct timespec *);
extern int clock_gettime(clockid_t, struct timespec *);
extern int clock_settime(clockid_t, const struct timespec *);
extern int timer_create(clockid_t, struct sigevent *, timer_t *);
extern int timer_delete(timer_t);
extern int timer_getoverrun(timer_t);
extern int timer_gettime(timer_t, struct itimerspec *);
extern int timer_settime(timer_t, int, const struct itimerspec *,
struct itimerspec *);
extern int nanosleep(const struct timespec *, struct timespec *);
extern void tzset(void);
extern char *tzname[2];
extern long _sysconf(int);
extern long timezone;
extern int daylight;
extern int cftime(char *, char *, const time_t *);
extern int ascftime(char *, const char *, const struct tm *);
extern long altzone;
extern struct tm *getdate(const char *);
extern int getdate_err;
# 411 "/usr/include/sys/time.h" 2 3 4
# 423 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 424 "/usr/include/sys/time.h" 2 3 4
# 18 "/usr/include/sys/select.h" 2 3 4
# 45 "/usr/include/sys/select.h" 3 4
typedef long fd_mask;
typedef long fds_mask;
# 73 "/usr/include/sys/select.h" 3 4
typedef struct fd_set {
long fds_bits[(((1024)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))];
} fd_set;
# 97 "/usr/include/sys/select.h" 3 4
extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 574 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 24 "/usr/include/fcntl.h" 2 3 4
# 1 "/usr/include/sys/fcntl.h" 1 3 4
# 16 "/usr/include/sys/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.45 98/07/17 SMI"
# 164 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock {
short l_type;
short l_whence;
off_t l_start;
off_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock_t;
# 194 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock64 {
short l_type;
short l_whence;
off64_t l_start;
off64_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock64_t;
# 272 "/usr/include/sys/fcntl.h" 3 4
typedef struct fshare {
short f_access;
short f_deny;
int f_id;
} fshare_t;
# 25 "/usr/include/fcntl.h" 2 3 4
# 72 "/usr/include/fcntl.h" 3 4
extern int fcntl(int, int, ...);
extern int open(const char *, int, ...);
extern int creat(const char *, mode_t);
extern int directio(int, int);
extern int open64(const char *, int, ...);
extern int creat64(const char *, mode_t);
# 28 "test.c" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
# 88 "/usr/include/iso/stdio_iso.h" 3 4
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 29 "test.c" 2
# 1 "../gsl/gsl_math.h" 1
# 22 "../gsl/gsl_math.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 1 3 4
# 23 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
#pragma ident "@(#)math.h 2.10 99/07/29 SMI"
# 1 "/usr/include/iso/math_iso.h" 1 3 4
#pragma ident "@(#)math_iso.h 1.1 99/07/30 SMI"
# 20 "/usr/include/iso/math_iso.h" 3 4
typedef union _h_val {
unsigned long _i[sizeof(double) / sizeof(unsigned long)];
double _d;
} _h_val;
extern const _h_val __huge_val;
# 37 "/usr/include/iso/math_iso.h" 3 4
extern double acos (double);
extern double asin (double);
extern double atan (double);
extern double atan2 (double, double);
extern double cos (double);
extern double sin (double);
extern double tan (double);
extern double cosh (double);
extern double sinh (double);
extern double tanh (double);
extern double exp (double);
extern double frexp (double, int *);
extern double ldexp (double, int);
extern double log (double);
extern double log10 (double);
extern double modf (double, double *);
extern double pow (double, double);
extern double sqrt (double);
extern double ceil (double);
extern double fabs (double);
extern double floor (double);
extern double fmod (double, double);
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 89 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int signgam;
enum version {libm_ieee = -1, c_issue_4, ansi_1, strict_ansi};
extern const enum version _lib_version;
struct exception {
int type;
char *name;
double arg1;
double arg2;
double retval;
};
# 145 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double erf (double);
extern double erfc (double);
extern double gamma (double);
extern double hypot (double, double);
extern int isnan (double);
extern double j0 (double);
extern double j1 (double);
extern double jn (int, double);
extern double lgamma (double);
extern double y0 (double);
extern double y1 (double);
extern double yn (int, double);
# 172 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double acosh (double);
extern double asinh (double);
extern double atanh (double);
extern double cbrt (double);
extern double logb (double);
extern double nextafter (double, double);
extern double remainder (double, double);
extern double scalb (double, double);
# 192 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double expm1 (double);
extern int ilogb (double);
extern double log1p (double);
extern double rint (double);
# 208 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int matherr (struct exception *);
extern double significand (double);
extern double copysign (double, double);
extern double scalbn (double, int);
# 243 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern float modff (float, float *);
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 1 3 4
# 20 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
#pragma ident "@(#)floatingpoint.h 2.5 99/06/22 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 1 3 4
# 17 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
#pragma ident "@(#)ieeefp.h 2.8 99/10/29"
# 27 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_direction_type {
fp_nearest = 0,
fp_tozero = 1,
fp_positive = 2,
fp_negative = 3
};
enum fp_precision_type {
fp_extended = 0,
fp_single = 1,
fp_double = 2,
fp_precision_3 = 3
};
enum fp_exception_type {
fp_inexact = 0,
fp_division = 1,
fp_underflow = 2,
fp_overflow = 3,
fp_invalid = 4
};
enum fp_trap_enable_type {
fp_trap_inexact = 0,
fp_trap_division = 1,
fp_trap_underflow = 2,
fp_trap_overflow = 3,
fp_trap_invalid = 4
};
# 133 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_class_type {
fp_zero = 0,
fp_subnormal = 1,
fp_normal = 2,
fp_infinity = 3,
fp_quiet = 4,
fp_signaling = 5
};
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef int sigfpe_code_type;
typedef void (*sigfpe_handler_type)();
extern sigfpe_handler_type sigfpe (sigfpe_code_type, sigfpe_handler_type);
typedef float single;
typedef unsigned extended[3];
typedef long double quadruple;
typedef unsigned fp_exception_field_type;
# 94 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef char decimal_string[512];
typedef struct {
enum fp_class_type fpclass;
int sign;
int exponent;
decimal_string ds;
int more;
int ndigits;
} decimal_record;
enum decimal_form {
fixed_form,
floating_form
};
typedef struct {
enum fp_direction_type rd;
enum decimal_form df;
int ndigits;
} decimal_mode;
enum decimal_string_form {
invalid_form,
whitespace_form,
fixed_int_form,
fixed_intdot_form,
fixed_dotfrac_form,
fixed_intdotfrac_form,
floating_int_form,
floating_intdot_form,
floating_dotfrac_form,
floating_intdotfrac_form,
inf_form,
infinity_form,
nan_form,
nanstring_form
};
extern void single_to_decimal (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void double_to_decimal (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void extended_to_decimal (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void quadruple_to_decimal (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_single (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_double (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_extended (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_quadruple (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void string_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **);
extern void func_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, int (*)(void), int *, int (*)(int));
extern void file_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, FILE *, int *);
extern char *seconvert (single *, int, int *, int *, char *);
extern char *sfconvert (single *, int, int *, int *, char *);
extern char *sgconvert (single *, int, int, char *);
extern char *econvert (double, int, int *, int *, char *);
extern char *fconvert (double, int, int *, int *, char *);
extern char *gconvert (double, int, int, char *);
extern char *qeconvert (quadruple *, int, int *, int *, char *);
extern char *qfconvert (quadruple *, int, int *, int *, char *);
extern char *qgconvert (quadruple *, int, int, char *);
extern char *ecvt (double, int, int *, int *);
extern char *fcvt (double, int, int *, int *);
extern char *gcvt (double, int, char *);
extern double atof (const char *);
extern double strtod (const char *, char **);
# 251 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 23 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_sys.h" 1
# 33 "../gsl/gsl_sys.h"
double gsl_log1p (const double x);
double gsl_expm1 (const double x);
double gsl_hypot (const double x, const double y);
double gsl_acosh (const double x);
double gsl_asinh (const double x);
double gsl_atanh (const double x);
int gsl_isnan (const double x);
int gsl_isinf (const double x);
int gsl_finite (const double x);
double gsl_nan (void);
double gsl_posinf (void);
double gsl_neginf (void);
double gsl_fdiv (const double x, const double y);
double gsl_coerce_double (const double x);
float gsl_coerce_float (const float x);
long double gsl_coerce_long_double (const long double x);
double gsl_ldexp(const double x, const int e);
double gsl_frexp(const double x, int * e);
int gsl_fcmp (const double x1, const double x2, const double epsilon);
# 24 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_machine.h" 1
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 1 3 4
# 11 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
#pragma ident "@(#)limits.h 1.51 99/10/08 SMI"
# 1 "/usr/include/iso/limits_iso.h" 1 3 4
# 28 "/usr/include/iso/limits_iso.h" 3 4
#pragma ident "@(#)limits_iso.h 1.1 99/08/09 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 41 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
# 1 "/usr/include/sys/int_limits.h" 1 3 4
# 9 "/usr/include/sys/int_limits.h" 3 4
#pragma ident "@(#)int_limits.h 1.6 99/08/06 SMI"
# 42 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 12 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 2 3 4
# 6 "../gsl/gsl_machine.h" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/float.h" 1 3 4
# 7 "../gsl/gsl_machine.h" 2
# 25 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_precision.h" 1
# 24 "../gsl/gsl_precision.h"
# 1 "../gsl/gsl_types.h" 1
# 25 "../gsl/gsl_precision.h" 2
# 36 "../gsl/gsl_precision.h"
typedef unsigned int gsl_prec_t;
# 56 "../gsl/gsl_precision.h"
extern const double gsl_prec_eps[];
extern const double gsl_prec_sqrt_eps[];
extern const double gsl_prec_root3_eps[];
extern const double gsl_prec_root4_eps[];
extern const double gsl_prec_root5_eps[];
extern const double gsl_prec_root6_eps[];
# 26 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_nan.h" 1
# 27 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_pow_int.h" 1
# 33 "../gsl/gsl_pow_int.h"
extern inline double gsl_pow_2(const double x);
extern inline double gsl_pow_3(const double x);
extern inline double gsl_pow_4(const double x);
extern inline double gsl_pow_5(const double x);
extern inline double gsl_pow_6(const double x);
extern inline double gsl_pow_7(const double x);
extern inline double gsl_pow_8(const double x);
extern inline double gsl_pow_9(const double x);
extern inline double gsl_pow_2(const double x) { return x*x; }
extern inline double gsl_pow_3(const double x) { return x*x*x; }
extern inline double gsl_pow_4(const double x) { double x2 = x*x; return x2*x2; }
extern inline double gsl_pow_5(const double x) { double x2 = x*x; return x2*x2*x; }
extern inline double gsl_pow_6(const double x) { double x2 = x*x; return x2*x2*x2; }
extern inline double gsl_pow_7(const double x) { double x3 = x*x*x; return x3*x3*x; }
extern inline double gsl_pow_8(const double x) { double x2 = x*x; double x4 = x2*x2; return x4*x4; }
extern inline double gsl_pow_9(const double x) { double x3 = x*x*x; return x3*x3*x3; }
# 64 "../gsl/gsl_pow_int.h"
double gsl_pow_int(double x, int n);
# 28 "../gsl/gsl_math.h" 2
# 108 "../gsl/gsl_math.h"
# 126 "../gsl/gsl_math.h"
double gsl_max (double a, double b);
double gsl_min (double a, double b);
extern inline int GSL_MAX_INT (int a, int b);
extern inline int GSL_MIN_INT (int a, int b);
extern inline double GSL_MAX_DBL (double a, double b);
extern inline double GSL_MIN_DBL (double a, double b);
extern inline long double GSL_MAX_LDBL (long double a, long double b);
extern inline long double GSL_MIN_LDBL (long double a, long double b);
extern inline int
GSL_MAX_INT (int a, int b)
{
return ((a) > (b) ? (a) : (b));
}
extern inline int
GSL_MIN_INT (int a, int b)
{
return ((a) < (b) ? (a) : (b));
}
extern inline double
GSL_MAX_DBL (double a, double b)
{
return ((a) > (b) ? (a) : (b));
}
extern inline double
GSL_MIN_DBL (double a, double b)
{
return ((a) < (b) ? (a) : (b));
}
extern inline long double
GSL_MAX_LDBL (long double a, long double b)
{
return ((a) > (b) ? (a) : (b));
}
extern inline long double
GSL_MIN_LDBL (long double a, long double b)
{
return ((a) < (b) ? (a) : (b));
}
# 185 "../gsl/gsl_math.h"
struct gsl_function_struct
{
double (* function) (double x, void * params);
void * params;
};
typedef struct gsl_function_struct gsl_function ;
struct gsl_function_fdf_struct
{
double (* f) (double x, void * params);
double (* df) (double x, void * params);
void (* fdf) (double x, void * params, double * f, double * df);
void * params;
};
typedef struct gsl_function_fdf_struct gsl_function_fdf ;
# 214 "../gsl/gsl_math.h"
struct gsl_function_vec_struct
{
int (* function) (double x, double y[], void * params);
void * params;
};
typedef struct gsl_function_vec_struct gsl_function_vec ;
# 30 "test.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 25 "../gsl/gsl_vector_complex_long_double.h"
# 1 "../gsl/gsl_errno.h" 1
# 24 "../gsl/gsl_errno.h"
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 26 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
extern inline
long double
gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
long double *
gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (long double *) (v->data + i * v->stride);
}
extern inline
const long double *
gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const long double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
extern inline
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v,
const size_t i)
{
if (i >= v->size)
{
const gsl_complex_long_double zero = {{0, 0}};
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 193, GSL_EINVAL) ; return zero ; } while (0);
}
return *((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v,
const size_t i, gsl_complex_long_double z)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 207, GSL_EINVAL) ; return ; } while (0);
}
*((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_long_double *
gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 221, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_long_double *
gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 235, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
extern inline
double
gsl_vector_get (const gsl_vector * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_set (gsl_vector * v, const size_t i, double x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
double *
gsl_vector_ptr (gsl_vector * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (double *) (v->data + i * v->stride);
}
extern inline
const double *
gsl_vector_const_ptr (const gsl_vector * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
extern inline
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v,
const size_t i)
{
if (i >= v->size)
{
const gsl_complex zero = {{0, 0}};
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 193, GSL_EINVAL) ; return zero ; } while (0);
}
return *((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_set (gsl_vector_complex * v,
const size_t i, gsl_complex z)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 207, GSL_EINVAL) ; return ; } while (0);
}
*((gsl_complex*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex *
gsl_vector_complex_ptr (gsl_vector_complex * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 221, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex *
gsl_vector_complex_const_ptr (const gsl_vector_complex * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 235, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
extern inline
float
gsl_vector_float_get (const gsl_vector_float * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
float *
gsl_vector_float_ptr (gsl_vector_float * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (float *) (v->data + i * v->stride);
}
extern inline
const float *
gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const float *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
extern inline
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v,
const size_t i)
{
if (i >= v->size)
{
const gsl_complex_float zero = {{0, 0}};
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 193, GSL_EINVAL) ; return zero ; } while (0);
}
return *((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_float_set (gsl_vector_complex_float * v,
const size_t i, gsl_complex_float z)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 207, GSL_EINVAL) ; return ; } while (0);
}
*((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_float *
gsl_vector_complex_float_ptr (gsl_vector_complex_float * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 221, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_float *
gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 235, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
extern inline
unsigned long
gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned long *
gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned long *) (v->data + i * v->stride);
}
extern inline
const unsigned long *
gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned long *) (v->data + i * v->stride);
}
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
extern inline
long
gsl_vector_long_get (const gsl_vector_long * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
long *
gsl_vector_long_ptr (gsl_vector_long * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (long *) (v->data + i * v->stride);
}
extern inline
const long *
gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const long *) (v->data + i * v->stride);
}
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
extern inline
unsigned int
gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned int *
gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned int *) (v->data + i * v->stride);
}
extern inline
const unsigned int *
gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned int *) (v->data + i * v->stride);
}
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
extern inline
int
gsl_vector_int_get (const gsl_vector_int * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
int *
gsl_vector_int_ptr (gsl_vector_int * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (int *) (v->data + i * v->stride);
}
extern inline
const int *
gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const int *) (v->data + i * v->stride);
}
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
extern inline
unsigned short
gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned short *
gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned short *) (v->data + i * v->stride);
}
extern inline
const unsigned short *
gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned short *) (v->data + i * v->stride);
}
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
extern inline
short
gsl_vector_short_get (const gsl_vector_short * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
short *
gsl_vector_short_ptr (gsl_vector_short * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (short *) (v->data + i * v->stride);
}
extern inline
const short *
gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const short *) (v->data + i * v->stride);
}
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
extern inline
unsigned char
gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned char *
gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned char *) (v->data + i * v->stride);
}
extern inline
const unsigned char *
gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned char *) (v->data + i * v->stride);
}
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
extern inline
char
gsl_vector_char_get (const gsl_vector_char * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
char *
gsl_vector_char_ptr (gsl_vector_char * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (char *) (v->data + i * v->stride);
}
extern inline
const char *
gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const char *) (v->data + i * v->stride);
}
# 23 "../gsl/gsl_vector.h" 2
# 31 "test.c" 2
# 1 "../gsl/gsl_test.h" 1
# 33 "../gsl/gsl_test.h"
void
gsl_test (int status, const char *test_description, ...);
void
gsl_test_rel (double result, double expected, double relative_error,
const char *test_description, ...) ;
void
gsl_test_abs (double result, double expected, double absolute_error,
const char *test_description, ...) ;
void
gsl_test_factor (double result, double expected, double factor,
const char *test_description, ...) ;
void
gsl_test_int (int result, int expected, const char *test_description, ...) ;
void
gsl_test_str (const char * result, const char * expected,
const char *test_description, ...) ;
void
gsl_test_verbose (int verbose) ;
int
gsl_test_summary (void) ;
# 32 "test.c" 2
# 1 "../gsl/gsl_ieee_utils.h" 1
# 34 "../gsl/gsl_ieee_utils.h"
enum {
GSL_IEEE_TYPE_NAN = 1,
GSL_IEEE_TYPE_INF = 2,
GSL_IEEE_TYPE_NORMAL = 3,
GSL_IEEE_TYPE_DENORMAL = 4,
GSL_IEEE_TYPE_ZERO = 5
} ;
typedef struct {
int sign ;
char mantissa[24] ;
int exponent ;
int type ;
} gsl_ieee_float_rep ;
typedef struct {
int sign ;
char mantissa[53] ;
int exponent ;
int type ;
} gsl_ieee_double_rep ;
void gsl_ieee_printf_float (const float * x) ;
void gsl_ieee_printf_double (const double * x) ;
void gsl_ieee_fprintf_float (FILE * stream, const float * x) ;
void gsl_ieee_fprintf_double (FILE * stream, const double * x) ;
void gsl_ieee_float_to_rep (const float * x, gsl_ieee_float_rep * r) ;
void gsl_ieee_double_to_rep (const double * x, gsl_ieee_double_rep * r) ;
enum {
GSL_IEEE_SINGLE_PRECISION = 1,
GSL_IEEE_DOUBLE_PRECISION = 2,
GSL_IEEE_EXTENDED_PRECISION = 3
} ;
enum {
GSL_IEEE_ROUND_TO_NEAREST = 1,
GSL_IEEE_ROUND_DOWN = 2,
GSL_IEEE_ROUND_UP = 3,
GSL_IEEE_ROUND_TO_ZERO = 4
} ;
enum {
GSL_IEEE_MASK_INVALID = 1,
GSL_IEEE_MASK_DENORMALIZED = 2,
GSL_IEEE_MASK_DIVISION_BY_ZERO = 4,
GSL_IEEE_MASK_OVERFLOW = 8,
GSL_IEEE_MASK_UNDERFLOW = 16,
GSL_IEEE_MASK_ALL = 31,
GSL_IEEE_TRAP_INEXACT = 32
} ;
void gsl_ieee_env_setup (void) ;
int gsl_ieee_read_mode_string (const char * description, int * precision,
int * rounding, int * exception_mask) ;
int gsl_ieee_set_mode (int precision, int rounding, int exception_mask) ;
# 33 "test.c" 2
int status = 0;
# 43 "test.c"
# 1 "../templates_on.h" 1
# 44 "test.c" 2
# 1 "test_complex_source.c" 1
# 20 "test_complex_source.c"
void test_complex_long_double_func (void);
void test_complex_long_double_binary (void);
void test_complex_long_double_trap (void);
void
test_complex_long_double_func (void)
{
size_t i;
gsl_vector_complex_long_double * v = gsl_vector_complex_long_double_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex_long_double" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex_long_double" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex_long_double" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x = {{0.0L,0.0L}};
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1234);
gsl_vector_complex_long_double_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (long double) i || v->data[2 * i + 1] != (long double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x, y;
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1234);
y = gsl_vector_complex_long_double_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_long_double x, y;
((x).dat[0]) = (long double)(2 * i);
((x).dat[1]) = (long double)(2 * i + 1234);
y = gsl_vector_complex_long_double_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_long_double x;
((x).dat[0]) = (long double)i ;
((x).dat[1]) = (long double)(i + 1234);
gsl_vector_complex_long_double_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (long double) i || v->data[2 * 2 * i + 1] != (long double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x = {{0.0L,0.0L}};
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1234);
gsl_vector_complex_long_double_set (v, i, x);
};
{
gsl_complex_long_double x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_long_double_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_long_double_get(v,2);
s = gsl_vector_complex_long_double_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_long_double_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_long_double_get(v,2);
s = gsl_vector_complex_long_double_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex_long_double" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_complex_long_double_reverse (v) ;
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x,r ;
((x).dat[0]) = (long double)(1027 - i - 1) ;
((x).dat[1]) = (long double)(1027 - i - 1 + 1234);
r = gsl_vector_complex_long_double_get (v, i);
status |= !(((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1]));
}
gsl_test (status, "gsl_vector_complex_long_double" "_reverse" " (static)" " reverses elements") ;
gsl_vector_complex_long_double_free (v);
}
void
test_complex_long_double_binary (void)
{
gsl_vector_complex_long_double * v = gsl_vector_complex_long_double_calloc (1027);
gsl_vector_complex_long_double * w = gsl_vector_complex_long_double_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x = {{0.0L,0.0L}};
((x).dat[0]) = (long double)(1027 - i);
((x).dat[1]) = (long double)(1027 - i + 1);
gsl_vector_complex_long_double_set (v, i, x);
};
gsl_vector_complex_long_double_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_complex_long_double_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (long double) (1027 - i) || w->data[2 * i + 1] != (long double) (1027 - i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_long_double_free (v);
gsl_vector_complex_long_double_free (w);
gsl_test (status, "gsl_vector_complex_long_double" "_write and read work");
}
void
test_complex_long_double_trap (void)
{
gsl_vector_complex_long_double * vc = gsl_vector_complex_long_double_alloc (1027);
gsl_complex_long_double z = {{(long double)1.2, (long double)3.4}};
gsl_complex_long_double z1 = {{(long double)4.5, (long double)6.7}};
size_t j = 0;
status = 0;
gsl_vector_complex_long_double_set (vc, j - 1, z);
gsl_test (!status,
"gsl_vector_complex_long_double" "_set traps index below lower bound");
status = 0;
gsl_vector_complex_long_double_set (vc, 1027 + 1, z);
gsl_test (!status,
"gsl_vector_complex_long_double" "_set traps index above upper bound");
status = 0;
gsl_vector_complex_long_double_set (vc, 1027, z);
gsl_test (!status, "gsl_vector_complex_long_double" "_set traps index at upper bound");
status = 0;
z1 = gsl_vector_complex_long_double_get (vc, j - 1);
gsl_test (!status,
"gsl_vector_complex_long_double" "_get traps index below lower bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_long_double" "_get returns zero real below lower bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_long_double" "_get returns zero imag below lower bound");
status = 0;
z1 = gsl_vector_complex_long_double_get (vc, 1027 + 1);
gsl_test (!status,
"gsl_vector_complex_long_double" "_get traps index above upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_long_double" "_get returns zero real above upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_long_double" "_get returns zero imag above upper bound");
status = 0;
z1 = gsl_vector_complex_long_double_get (vc, 1027);
gsl_test (!status, "gsl_vector_complex_long_double" "_get traps index at upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_long_double" "_get returns zero real at upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_long_double" "_get returns zero imag at upper bound");
gsl_vector_complex_long_double_free (vc);
}
# 45 "test.c" 2
# 1 "test_complex_io.c" 1
# 20 "test_complex_io.c"
void test_complex_long_double_text (void);
void
test_complex_long_double_text (void)
{
gsl_vector_complex_long_double * v = gsl_vector_complex_long_double_alloc (1027);
gsl_vector_complex_long_double * w = gsl_vector_complex_long_double_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x;
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1);
gsl_vector_complex_long_double_set (v, i, x);
};
gsl_vector_complex_long_double_fprintf (f, v, "%Lg");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_complex_long_double_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (long double) i || w->data[2 * i + 1] != (long double) (i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_long_double_free (v);
gsl_vector_complex_long_double_free (w);
gsl_test (status, "gsl_vector_complex_long_double" "_fprintf and fscanf");
}
# 47 "test.c" 2
# 1 "../templates_off.h" 1
# 49 "test.c" 2
# 1 "../templates_on.h" 1
# 54 "test.c" 2
# 1 "test_complex_source.c" 1
# 20 "test_complex_source.c"
void test_complex_func (void);
void test_complex_binary (void);
void test_complex_trap (void);
void
test_complex_func (void)
{
size_t i;
gsl_vector_complex * v = gsl_vector_complex_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex x = {{0.0,0.0}};
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1234);
gsl_vector_complex_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (double) i || v->data[2 * i + 1] != (double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex x, y;
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1234);
y = gsl_vector_complex_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex x, y;
((x).dat[0]) = (double)(2 * i);
((x).dat[1]) = (double)(2 * i + 1234);
y = gsl_vector_complex_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex x;
((x).dat[0]) = (double)i ;
((x).dat[1]) = (double)(i + 1234);
gsl_vector_complex_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (double) i || v->data[2 * 2 * i + 1] != (double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex x = {{0.0,0.0}};
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1234);
gsl_vector_complex_set (v, i, x);
};
{
gsl_complex x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_get(v,2);
s = gsl_vector_complex_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_get(v,2);
s = gsl_vector_complex_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_complex_reverse (v) ;
for (i = 0; i < 1027; i++)
{
gsl_complex x,r ;
((x).dat[0]) = (double)(1027 - i - 1) ;
((x).dat[1]) = (double)(1027 - i - 1 + 1234);
r = gsl_vector_complex_get (v, i);
status |= !(((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1]));
}
gsl_test (status, "gsl_vector_complex" "_reverse" " (static)" " reverses elements") ;
gsl_vector_complex_free (v);
}
void
test_complex_binary (void)
{
gsl_vector_complex * v = gsl_vector_complex_calloc (1027);
gsl_vector_complex * w = gsl_vector_complex_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_complex x = {{0.0,0.0}};
((x).dat[0]) = (double)(1027 - i);
((x).dat[1]) = (double)(1027 - i + 1);
gsl_vector_complex_set (v, i, x);
};
gsl_vector_complex_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_complex_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (double) (1027 - i) || w->data[2 * i + 1] != (double) (1027 - i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_free (v);
gsl_vector_complex_free (w);
gsl_test (status, "gsl_vector_complex" "_write and read work");
}
void
test_complex_trap (void)
{
gsl_vector_complex * vc = gsl_vector_complex_alloc (1027);
gsl_complex z = {{(double)1.2, (double)3.4}};
gsl_complex z1 = {{(double)4.5, (double)6.7}};
size_t j = 0;
status = 0;
gsl_vector_complex_set (vc, j - 1, z);
gsl_test (!status,
"gsl_vector_complex" "_set traps index below lower bound");
status = 0;
gsl_vector_complex_set (vc, 1027 + 1, z);
gsl_test (!status,
"gsl_vector_complex" "_set traps index above upper bound");
status = 0;
gsl_vector_complex_set (vc, 1027, z);
gsl_test (!status, "gsl_vector_complex" "_set traps index at upper bound");
status = 0;
z1 = gsl_vector_complex_get (vc, j - 1);
gsl_test (!status,
"gsl_vector_complex" "_get traps index below lower bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex" "_get returns zero real below lower bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex" "_get returns zero imag below lower bound");
status = 0;
z1 = gsl_vector_complex_get (vc, 1027 + 1);
gsl_test (!status,
"gsl_vector_complex" "_get traps index above upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex" "_get returns zero real above upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex" "_get returns zero imag above upper bound");
status = 0;
z1 = gsl_vector_complex_get (vc, 1027);
gsl_test (!status, "gsl_vector_complex" "_get traps index at upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex" "_get returns zero real at upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex" "_get returns zero imag at upper bound");
gsl_vector_complex_free (vc);
}
# 55 "test.c" 2
# 1 "test_complex_io.c" 1
# 20 "test_complex_io.c"
void test_complex_text (void);
void
test_complex_text (void)
{
gsl_vector_complex * v = gsl_vector_complex_alloc (1027);
gsl_vector_complex * w = gsl_vector_complex_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_complex x;
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1);
gsl_vector_complex_set (v, i, x);
};
gsl_vector_complex_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_complex_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (double) i || w->data[2 * i + 1] != (double) (i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_free (v);
gsl_vector_complex_free (w);
gsl_test (status, "gsl_vector_complex" "_fprintf and fscanf");
}
# 56 "test.c" 2
# 1 "../templates_off.h" 1
# 57 "test.c" 2
# 1 "../templates_on.h" 1
# 61 "test.c" 2
# 1 "test_complex_source.c" 1
# 20 "test_complex_source.c"
void test_complex_float_func (void);
void test_complex_float_binary (void);
void test_complex_float_trap (void);
void
test_complex_float_func (void)
{
size_t i;
gsl_vector_complex_float * v = gsl_vector_complex_float_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex_float" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex_float" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex_float" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (float) i || v->data[2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)(2 * i);
((x).dat[1]) = (float)(2 * i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x;
((x).dat[0]) = (float)i ;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (float) i || v->data[2 * 2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
{
gsl_complex_float x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex_float" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_complex_float_reverse (v) ;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x,r ;
((x).dat[0]) = (float)(1027 - i - 1) ;
((x).dat[1]) = (float)(1027 - i - 1 + 1234);
r = gsl_vector_complex_float_get (v, i);
status |= !(((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1]));
}
gsl_test (status, "gsl_vector_complex_float" "_reverse" " (static)" " reverses elements") ;
gsl_vector_complex_float_free (v);
}
void
test_complex_float_binary (void)
{
gsl_vector_complex_float * v = gsl_vector_complex_float_calloc (1027);
gsl_vector_complex_float * w = gsl_vector_complex_float_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)(1027 - i);
((x).dat[1]) = (float)(1027 - i + 1);
gsl_vector_complex_float_set (v, i, x);
};
gsl_vector_complex_float_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_complex_float_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (float) (1027 - i) || w->data[2 * i + 1] != (float) (1027 - i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_float_free (v);
gsl_vector_complex_float_free (w);
gsl_test (status, "gsl_vector_complex_float" "_write and read work");
}
void
test_complex_float_trap (void)
{
gsl_vector_complex_float * vc = gsl_vector_complex_float_alloc (1027);
gsl_complex_float z = {{(float)1.2, (float)3.4}};
gsl_complex_float z1 = {{(float)4.5, (float)6.7}};
size_t j = 0;
status = 0;
gsl_vector_complex_float_set (vc, j - 1, z);
gsl_test (!status,
"gsl_vector_complex_float" "_set traps index below lower bound");
status = 0;
gsl_vector_complex_float_set (vc, 1027 + 1, z);
gsl_test (!status,
"gsl_vector_complex_float" "_set traps index above upper bound");
status = 0;
gsl_vector_complex_float_set (vc, 1027, z);
gsl_test (!status, "gsl_vector_complex_float" "_set traps index at upper bound");
status = 0;
z1 = gsl_vector_complex_float_get (vc, j - 1);
gsl_test (!status,
"gsl_vector_complex_float" "_get traps index below lower bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_float" "_get returns zero real below lower bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_float" "_get returns zero imag below lower bound");
status = 0;
z1 = gsl_vector_complex_float_get (vc, 1027 + 1);
gsl_test (!status,
"gsl_vector_complex_float" "_get traps index above upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_float" "_get returns zero real above upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_float" "_get returns zero imag above upper bound");
status = 0;
z1 = gsl_vector_complex_float_get (vc, 1027);
gsl_test (!status, "gsl_vector_complex_float" "_get traps index at upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_float" "_get returns zero real at upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_float" "_get returns zero imag at upper bound");
gsl_vector_complex_float_free (vc);
}
# 62 "test.c" 2
# 1 "test_complex_io.c" 1
# 20 "test_complex_io.c"
void test_complex_float_text (void);
void
test_complex_float_text (void)
{
gsl_vector_complex_float * v = gsl_vector_complex_float_alloc (1027);
gsl_vector_complex_float * w = gsl_vector_complex_float_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x;
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1);
gsl_vector_complex_float_set (v, i, x);
};
gsl_vector_complex_float_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_complex_float_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (float) i || w->data[2 * i + 1] != (float) (i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_float_free (v);
gsl_vector_complex_float_free (w);
gsl_test (status, "gsl_vector_complex_float" "_fprintf and fscanf");
}
# 63 "test.c" 2
# 1 "../templates_off.h" 1
# 64 "test.c" 2
# 1 "../templates_on.h" 1
# 68 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_long_double_func (void);
void test_long_double_binary (void);
void test_long_double_trap (void);
void
test_long_double_func (void)
{
gsl_vector_long_double * v;
size_t i;
v = gsl_vector_long_double_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_long_double" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_long_double" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_long_double" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (long double) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long_double" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_long_double_get (v, i) != (long double) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long_double" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_long_double_get (v, i) != (long double) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_long_double_set (v, i, (long double) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (long double) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) i);
}
gsl_vector_long_double_swap_elements (v, 2, 5) ;
status = (gsl_vector_long_double_get(v,2) != 5) ;
status |= (gsl_vector_long_double_get(v,5) != 2) ;
gsl_vector_long_double_swap_elements (v, 2, 5) ;
status |= (gsl_vector_long_double_get(v,2) != 2) ;
status |= (gsl_vector_long_double_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_long_double" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_long_double_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_long_double_get (v, i) != (long double) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_long_double" "_reverse" " (static)" " reverses elements") ;
{
long double exp_max = gsl_vector_long_double_get(v, 0);
long double exp_min = gsl_vector_long_double_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
long double k = gsl_vector_long_double_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_long_double_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
long double k = gsl_vector_long_double_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_long_double_get (v, i) ;
exp_imax = i;
}
}
{
long double max = gsl_vector_long_double_max (v) ;
gsl_test (max != exp_max, "gsl_vector_long_double" "_max returns correct maximum value");
}
{
long double min = gsl_vector_long_double_min (v) ;
gsl_test (min != exp_min, "gsl_vector_long_double" "_min returns correct minimum value");
}
{
long double min, max;
gsl_vector_long_double_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_long_double" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_long_double" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_long_double_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_long_double" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_long_double_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_long_double" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_long_double_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_long_double" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_long_double" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_long_double * a = gsl_vector_long_double_calloc (1027);
gsl_vector_long_double * b = gsl_vector_long_double_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (a, i, (long double)(3 + i));
gsl_vector_long_double_set (b, i, (long double)(3 + 2 * i));
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_add vector addition");
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_sub vector subtraction");
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_mul multiplication");
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_div division");
}
gsl_vector_long_double_free (a);
gsl_vector_long_double_free (b);
}
gsl_vector_long_double_free (v);
}
void
test_long_double_binary (void)
{
gsl_vector_long_double * v = gsl_vector_long_double_calloc (1027);
gsl_vector_long_double * w = gsl_vector_long_double_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) (1027 - i));
};
gsl_vector_long_double_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_long_double_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long double) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_write and read");
fclose (f);
}
gsl_vector_long_double_free (v);
gsl_vector_long_double_free (w);
}
void
test_long_double_trap (void)
{
gsl_vector_long_double * v = gsl_vector_long_double_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_long_double_set (v, j - 1, (long double)0);
gsl_test (!status, "gsl_vector_long_double" "_set traps index below lower bound");
status = 0;
gsl_vector_long_double_set (v, 1027 + 1, (long double)0);
gsl_test (!status, "gsl_vector_long_double" "_set traps index above upper bound");
status = 0;
gsl_vector_long_double_set (v, 1027, (long double)0);
gsl_test (!status, "gsl_vector_long_double" "_set traps index at upper bound");
status = 0;
x = gsl_vector_long_double_get (v, j - 1);
gsl_test (!status, "gsl_vector_long_double" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_long_double" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_long_double_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_long_double" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_long_double" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_long_double_get (v, 1027);
gsl_test (!status, "gsl_vector_long_double" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_long_double" "_get returns zero for index at upper bound");
gsl_vector_long_double_free (v);
}
# 69 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_long_double_text (void);
void
test_long_double_text (void)
{
gsl_vector_long_double * v = gsl_vector_long_double_alloc (1027);
gsl_vector_long_double * w = gsl_vector_long_double_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) i);
};
gsl_vector_long_double_fprintf (f, v, "%Lg");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_long_double_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long double) i)
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_long_double_free (v);
gsl_vector_long_double_free (w);
}
# 71 "test.c" 2
# 1 "../templates_off.h" 1
# 73 "test.c" 2
# 1 "../templates_on.h" 1
# 77 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_func (void);
void test_binary (void);
void test_trap (void);
void
test_func (void)
{
gsl_vector * v;
size_t i;
v = gsl_vector_calloc (1027);
gsl_test (v->data == 0, "gsl_vector" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (double) i)
status = 1;
};
gsl_test (status,
"gsl_vector" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_get (v, i) != (double) i)
status = 1;
};
gsl_test (status,
"gsl_vector" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_get (v, i) != (double) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_set (v, i, (double) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (double) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) i);
}
gsl_vector_swap_elements (v, 2, 5) ;
status = (gsl_vector_get(v,2) != 5) ;
status |= (gsl_vector_get(v,5) != 2) ;
gsl_vector_swap_elements (v, 2, 5) ;
status |= (gsl_vector_get(v,2) != 2) ;
status |= (gsl_vector_get(v,5) != 5) ;
gsl_test (status, "gsl_vector" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_get (v, i) != (double) (1027 - i - 1));
}
gsl_test (status, "gsl_vector" "_reverse" " (static)" " reverses elements") ;
{
double exp_max = gsl_vector_get(v, 0);
double exp_min = gsl_vector_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
double k = gsl_vector_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
double k = gsl_vector_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_get (v, i) ;
exp_imax = i;
}
}
{
double max = gsl_vector_max (v) ;
gsl_test (max != exp_max, "gsl_vector" "_max returns correct maximum value");
}
{
double min = gsl_vector_min (v) ;
gsl_test (min != exp_min, "gsl_vector" "_min returns correct minimum value");
}
{
double min, max;
gsl_vector_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector * a = gsl_vector_calloc (1027);
gsl_vector * b = gsl_vector_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_set (a, i, (double)(3 + i));
gsl_vector_set (b, i, (double)(3 + 2 * i));
}
gsl_vector_memcpy (v, a);
gsl_vector_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector" "_add vector addition");
}
gsl_vector_memcpy (v, a);
gsl_vector_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector" "_sub vector subtraction");
}
gsl_vector_memcpy (v, a);
gsl_vector_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector" "_mul multiplication");
}
gsl_vector_memcpy (v, a);
gsl_vector_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector" "_div division");
}
gsl_vector_free (a);
gsl_vector_free (b);
}
gsl_vector_free (v);
}
void
test_binary (void)
{
gsl_vector * v = gsl_vector_calloc (1027);
gsl_vector * w = gsl_vector_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) (1027 - i));
};
gsl_vector_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (double) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector" "_write and read");
fclose (f);
}
gsl_vector_free (v);
gsl_vector_free (w);
}
void
test_trap (void)
{
gsl_vector * v = gsl_vector_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_set (v, j - 1, (double)0);
gsl_test (!status, "gsl_vector" "_set traps index below lower bound");
status = 0;
gsl_vector_set (v, 1027 + 1, (double)0);
gsl_test (!status, "gsl_vector" "_set traps index above upper bound");
status = 0;
gsl_vector_set (v, 1027, (double)0);
gsl_test (!status, "gsl_vector" "_set traps index at upper bound");
status = 0;
x = gsl_vector_get (v, j - 1);
gsl_test (!status, "gsl_vector" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_get (v, 1027);
gsl_test (!status, "gsl_vector" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector" "_get returns zero for index at upper bound");
gsl_vector_free (v);
}
# 78 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_text (void);
void
test_text (void)
{
gsl_vector * v = gsl_vector_alloc (1027);
gsl_vector * w = gsl_vector_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) i);
};
gsl_vector_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (double) i)
status = 1;
};
gsl_test (status, "gsl_vector" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_free (v);
gsl_vector_free (w);
}
# 79 "test.c" 2
# 1 "../templates_off.h" 1
# 80 "test.c" 2
# 1 "../templates_on.h" 1
# 84 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_float_func (void);
void test_float_binary (void);
void test_float_trap (void);
void
test_float_func (void)
{
gsl_vector_float * v;
size_t i;
v = gsl_vector_float_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_float" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_float" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_float" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (float) i)
status = 1;
};
gsl_test (status,
"gsl_vector_float" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_float_get (v, i) != (float) i)
status = 1;
};
gsl_test (status,
"gsl_vector_float" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_float_get (v, i) != (float) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_float" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_float_set (v, i, (float) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (float) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_float" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) i);
}
gsl_vector_float_swap_elements (v, 2, 5) ;
status = (gsl_vector_float_get(v,2) != 5) ;
status |= (gsl_vector_float_get(v,5) != 2) ;
gsl_vector_float_swap_elements (v, 2, 5) ;
status |= (gsl_vector_float_get(v,2) != 2) ;
status |= (gsl_vector_float_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_float" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_float_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_float_get (v, i) != (float) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_float" "_reverse" " (static)" " reverses elements") ;
{
float exp_max = gsl_vector_float_get(v, 0);
float exp_min = gsl_vector_float_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
float k = gsl_vector_float_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_float_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
float k = gsl_vector_float_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_float_get (v, i) ;
exp_imax = i;
}
}
{
float max = gsl_vector_float_max (v) ;
gsl_test (max != exp_max, "gsl_vector_float" "_max returns correct maximum value");
}
{
float min = gsl_vector_float_min (v) ;
gsl_test (min != exp_min, "gsl_vector_float" "_min returns correct minimum value");
}
{
float min, max;
gsl_vector_float_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_float" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_float" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_float_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_float" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_float_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_float" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_float_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_float" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_float" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_float * a = gsl_vector_float_calloc (1027);
gsl_vector_float * b = gsl_vector_float_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (a, i, (float)(3 + i));
gsl_vector_float_set (b, i, (float)(3 + 2 * i));
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_float" "_add vector addition");
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_float" "_sub vector subtraction");
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_float" "_mul multiplication");
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_float" "_div division");
}
gsl_vector_float_free (a);
gsl_vector_float_free (b);
}
gsl_vector_float_free (v);
}
void
test_float_binary (void)
{
gsl_vector_float * v = gsl_vector_float_calloc (1027);
gsl_vector_float * w = gsl_vector_float_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) (1027 - i));
};
gsl_vector_float_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_float_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (float) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_float" "_write and read");
fclose (f);
}
gsl_vector_float_free (v);
gsl_vector_float_free (w);
}
void
test_float_trap (void)
{
gsl_vector_float * v = gsl_vector_float_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_float_set (v, j - 1, (float)0);
gsl_test (!status, "gsl_vector_float" "_set traps index below lower bound");
status = 0;
gsl_vector_float_set (v, 1027 + 1, (float)0);
gsl_test (!status, "gsl_vector_float" "_set traps index above upper bound");
status = 0;
gsl_vector_float_set (v, 1027, (float)0);
gsl_test (!status, "gsl_vector_float" "_set traps index at upper bound");
status = 0;
x = gsl_vector_float_get (v, j - 1);
gsl_test (!status, "gsl_vector_float" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_float" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_float_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_float" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_float" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_float_get (v, 1027);
gsl_test (!status, "gsl_vector_float" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_float" "_get returns zero for index at upper bound");
gsl_vector_float_free (v);
}
# 85 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_float_text (void);
void
test_float_text (void)
{
gsl_vector_float * v = gsl_vector_float_alloc (1027);
gsl_vector_float * w = gsl_vector_float_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) i);
};
gsl_vector_float_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_float_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (float) i)
status = 1;
};
gsl_test (status, "gsl_vector_float" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_float_free (v);
gsl_vector_float_free (w);
}
# 86 "test.c" 2
# 1 "../templates_off.h" 1
# 87 "test.c" 2
# 1 "../templates_on.h" 1
# 91 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_ulong_func (void);
void test_ulong_binary (void);
void test_ulong_trap (void);
void
test_ulong_func (void)
{
gsl_vector_ulong * v;
size_t i;
v = gsl_vector_ulong_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_ulong" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_ulong" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_ulong" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ulong" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_ulong_get (v, i) != (unsigned long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ulong" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_ulong_get (v, i) != (unsigned long) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned long) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) i);
}
gsl_vector_ulong_swap_elements (v, 2, 5) ;
status = (gsl_vector_ulong_get(v,2) != 5) ;
status |= (gsl_vector_ulong_get(v,5) != 2) ;
gsl_vector_ulong_swap_elements (v, 2, 5) ;
status |= (gsl_vector_ulong_get(v,2) != 2) ;
status |= (gsl_vector_ulong_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_ulong" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_ulong_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_ulong_get (v, i) != (unsigned long) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_ulong" "_reverse" " (static)" " reverses elements") ;
{
unsigned long exp_max = gsl_vector_ulong_get(v, 0);
unsigned long exp_min = gsl_vector_ulong_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned long k = gsl_vector_ulong_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_ulong_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned long k = gsl_vector_ulong_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_ulong_get (v, i) ;
exp_imax = i;
}
}
{
unsigned long max = gsl_vector_ulong_max (v) ;
gsl_test (max != exp_max, "gsl_vector_ulong" "_max returns correct maximum value");
}
{
unsigned long min = gsl_vector_ulong_min (v) ;
gsl_test (min != exp_min, "gsl_vector_ulong" "_min returns correct minimum value");
}
{
unsigned long min, max;
gsl_vector_ulong_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_ulong" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_ulong" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_ulong_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_ulong" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_ulong_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_ulong" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_ulong_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_ulong" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_ulong" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_ulong * a = gsl_vector_ulong_calloc (1027);
gsl_vector_ulong * b = gsl_vector_ulong_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (a, i, (unsigned long)(3 + i));
gsl_vector_ulong_set (b, i, (unsigned long)(3 + 2 * i));
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_add vector addition");
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_sub vector subtraction");
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_mul multiplication");
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_div division");
}
gsl_vector_ulong_free (a);
gsl_vector_ulong_free (b);
}
gsl_vector_ulong_free (v);
}
void
test_ulong_binary (void)
{
gsl_vector_ulong * v = gsl_vector_ulong_calloc (1027);
gsl_vector_ulong * w = gsl_vector_ulong_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) (1027 - i));
};
gsl_vector_ulong_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_ulong_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned long) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_write and read");
fclose (f);
}
gsl_vector_ulong_free (v);
gsl_vector_ulong_free (w);
}
void
test_ulong_trap (void)
{
gsl_vector_ulong * v = gsl_vector_ulong_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_ulong_set (v, j - 1, (unsigned long)0);
gsl_test (!status, "gsl_vector_ulong" "_set traps index below lower bound");
status = 0;
gsl_vector_ulong_set (v, 1027 + 1, (unsigned long)0);
gsl_test (!status, "gsl_vector_ulong" "_set traps index above upper bound");
status = 0;
gsl_vector_ulong_set (v, 1027, (unsigned long)0);
gsl_test (!status, "gsl_vector_ulong" "_set traps index at upper bound");
status = 0;
x = gsl_vector_ulong_get (v, j - 1);
gsl_test (!status, "gsl_vector_ulong" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_ulong" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_ulong_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_ulong" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_ulong" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_ulong_get (v, 1027);
gsl_test (!status, "gsl_vector_ulong" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_ulong" "_get returns zero for index at upper bound");
gsl_vector_ulong_free (v);
}
# 92 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_ulong_text (void);
void
test_ulong_text (void)
{
gsl_vector_ulong * v = gsl_vector_ulong_alloc (1027);
gsl_vector_ulong * w = gsl_vector_ulong_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) i);
};
gsl_vector_ulong_fprintf (f, v, "%lu");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_ulong_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned long) i)
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_ulong_free (v);
gsl_vector_ulong_free (w);
}
# 93 "test.c" 2
# 1 "../templates_off.h" 1
# 94 "test.c" 2
# 1 "../templates_on.h" 1
# 98 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_long_func (void);
void test_long_binary (void);
void test_long_trap (void);
void
test_long_func (void)
{
gsl_vector_long * v;
size_t i;
v = gsl_vector_long_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_long" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_long" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_long" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_long_get (v, i) != (long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_long_get (v, i) != (long) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_long" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_long_set (v, i, (long) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (long) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_long" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) i);
}
gsl_vector_long_swap_elements (v, 2, 5) ;
status = (gsl_vector_long_get(v,2) != 5) ;
status |= (gsl_vector_long_get(v,5) != 2) ;
gsl_vector_long_swap_elements (v, 2, 5) ;
status |= (gsl_vector_long_get(v,2) != 2) ;
status |= (gsl_vector_long_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_long" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_long_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_long_get (v, i) != (long) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_long" "_reverse" " (static)" " reverses elements") ;
{
long exp_max = gsl_vector_long_get(v, 0);
long exp_min = gsl_vector_long_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
long k = gsl_vector_long_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_long_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
long k = gsl_vector_long_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_long_get (v, i) ;
exp_imax = i;
}
}
{
long max = gsl_vector_long_max (v) ;
gsl_test (max != exp_max, "gsl_vector_long" "_max returns correct maximum value");
}
{
long min = gsl_vector_long_min (v) ;
gsl_test (min != exp_min, "gsl_vector_long" "_min returns correct minimum value");
}
{
long min, max;
gsl_vector_long_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_long" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_long" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_long_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_long" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_long_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_long" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_long_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_long" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_long" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_long * a = gsl_vector_long_calloc (1027);
gsl_vector_long * b = gsl_vector_long_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (a, i, (long)(3 + i));
gsl_vector_long_set (b, i, (long)(3 + 2 * i));
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long" "_add vector addition");
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long" "_sub vector subtraction");
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long" "_mul multiplication");
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_long" "_div division");
}
gsl_vector_long_free (a);
gsl_vector_long_free (b);
}
gsl_vector_long_free (v);
}
void
test_long_binary (void)
{
gsl_vector_long * v = gsl_vector_long_calloc (1027);
gsl_vector_long * w = gsl_vector_long_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) (1027 - i));
};
gsl_vector_long_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_long_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_long" "_write and read");
fclose (f);
}
gsl_vector_long_free (v);
gsl_vector_long_free (w);
}
void
test_long_trap (void)
{
gsl_vector_long * v = gsl_vector_long_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_long_set (v, j - 1, (long)0);
gsl_test (!status, "gsl_vector_long" "_set traps index below lower bound");
status = 0;
gsl_vector_long_set (v, 1027 + 1, (long)0);
gsl_test (!status, "gsl_vector_long" "_set traps index above upper bound");
status = 0;
gsl_vector_long_set (v, 1027, (long)0);
gsl_test (!status, "gsl_vector_long" "_set traps index at upper bound");
status = 0;
x = gsl_vector_long_get (v, j - 1);
gsl_test (!status, "gsl_vector_long" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_long" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_long_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_long" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_long" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_long_get (v, 1027);
gsl_test (!status, "gsl_vector_long" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_long" "_get returns zero for index at upper bound");
gsl_vector_long_free (v);
}
# 99 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_long_text (void);
void
test_long_text (void)
{
gsl_vector_long * v = gsl_vector_long_alloc (1027);
gsl_vector_long * w = gsl_vector_long_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) i);
};
gsl_vector_long_fprintf (f, v, "%ld");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_long_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long) i)
status = 1;
};
gsl_test (status, "gsl_vector_long" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_long_free (v);
gsl_vector_long_free (w);
}
# 100 "test.c" 2
# 1 "../templates_off.h" 1
# 101 "test.c" 2
# 1 "../templates_on.h" 1
# 105 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_uint_func (void);
void test_uint_binary (void);
void test_uint_trap (void);
void
test_uint_func (void)
{
gsl_vector_uint * v;
size_t i;
v = gsl_vector_uint_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_uint" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_uint" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_uint" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uint" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_uint_get (v, i) != (unsigned int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uint" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_uint_get (v, i) != (unsigned int) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned int) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) i);
}
gsl_vector_uint_swap_elements (v, 2, 5) ;
status = (gsl_vector_uint_get(v,2) != 5) ;
status |= (gsl_vector_uint_get(v,5) != 2) ;
gsl_vector_uint_swap_elements (v, 2, 5) ;
status |= (gsl_vector_uint_get(v,2) != 2) ;
status |= (gsl_vector_uint_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_uint" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_uint_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_uint_get (v, i) != (unsigned int) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_uint" "_reverse" " (static)" " reverses elements") ;
{
unsigned int exp_max = gsl_vector_uint_get(v, 0);
unsigned int exp_min = gsl_vector_uint_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned int k = gsl_vector_uint_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_uint_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned int k = gsl_vector_uint_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_uint_get (v, i) ;
exp_imax = i;
}
}
{
unsigned int max = gsl_vector_uint_max (v) ;
gsl_test (max != exp_max, "gsl_vector_uint" "_max returns correct maximum value");
}
{
unsigned int min = gsl_vector_uint_min (v) ;
gsl_test (min != exp_min, "gsl_vector_uint" "_min returns correct minimum value");
}
{
unsigned int min, max;
gsl_vector_uint_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_uint" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_uint" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_uint_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_uint" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_uint_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_uint" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_uint_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_uint" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_uint" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_uint * a = gsl_vector_uint_calloc (1027);
gsl_vector_uint * b = gsl_vector_uint_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (a, i, (unsigned int)(3 + i));
gsl_vector_uint_set (b, i, (unsigned int)(3 + 2 * i));
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_add vector addition");
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_sub vector subtraction");
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_mul multiplication");
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_div division");
}
gsl_vector_uint_free (a);
gsl_vector_uint_free (b);
}
gsl_vector_uint_free (v);
}
void
test_uint_binary (void)
{
gsl_vector_uint * v = gsl_vector_uint_calloc (1027);
gsl_vector_uint * w = gsl_vector_uint_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) (1027 - i));
};
gsl_vector_uint_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_uint_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned int) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_write and read");
fclose (f);
}
gsl_vector_uint_free (v);
gsl_vector_uint_free (w);
}
void
test_uint_trap (void)
{
gsl_vector_uint * v = gsl_vector_uint_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_uint_set (v, j - 1, (unsigned int)0);
gsl_test (!status, "gsl_vector_uint" "_set traps index below lower bound");
status = 0;
gsl_vector_uint_set (v, 1027 + 1, (unsigned int)0);
gsl_test (!status, "gsl_vector_uint" "_set traps index above upper bound");
status = 0;
gsl_vector_uint_set (v, 1027, (unsigned int)0);
gsl_test (!status, "gsl_vector_uint" "_set traps index at upper bound");
status = 0;
x = gsl_vector_uint_get (v, j - 1);
gsl_test (!status, "gsl_vector_uint" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_uint" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_uint_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_uint" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_uint" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_uint_get (v, 1027);
gsl_test (!status, "gsl_vector_uint" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_uint" "_get returns zero for index at upper bound");
gsl_vector_uint_free (v);
}
# 106 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_uint_text (void);
void
test_uint_text (void)
{
gsl_vector_uint * v = gsl_vector_uint_alloc (1027);
gsl_vector_uint * w = gsl_vector_uint_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) i);
};
gsl_vector_uint_fprintf (f, v, "%u");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_uint_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned int) i)
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_uint_free (v);
gsl_vector_uint_free (w);
}
# 107 "test.c" 2
# 1 "../templates_off.h" 1
# 108 "test.c" 2
# 1 "../templates_on.h" 1
# 112 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_int_func (void);
void test_int_binary (void);
void test_int_trap (void);
void
test_int_func (void)
{
gsl_vector_int * v;
size_t i;
v = gsl_vector_int_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_int" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_int" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_int" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_int" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_int_get (v, i) != (int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_int" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_int_get (v, i) != (int) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_int" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_int_set (v, i, (int) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (int) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_int" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) i);
}
gsl_vector_int_swap_elements (v, 2, 5) ;
status = (gsl_vector_int_get(v,2) != 5) ;
status |= (gsl_vector_int_get(v,5) != 2) ;
gsl_vector_int_swap_elements (v, 2, 5) ;
status |= (gsl_vector_int_get(v,2) != 2) ;
status |= (gsl_vector_int_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_int" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_int_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_int_get (v, i) != (int) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_int" "_reverse" " (static)" " reverses elements") ;
{
int exp_max = gsl_vector_int_get(v, 0);
int exp_min = gsl_vector_int_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
int k = gsl_vector_int_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_int_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
int k = gsl_vector_int_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_int_get (v, i) ;
exp_imax = i;
}
}
{
int max = gsl_vector_int_max (v) ;
gsl_test (max != exp_max, "gsl_vector_int" "_max returns correct maximum value");
}
{
int min = gsl_vector_int_min (v) ;
gsl_test (min != exp_min, "gsl_vector_int" "_min returns correct minimum value");
}
{
int min, max;
gsl_vector_int_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_int" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_int" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_int_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_int" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_int_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_int" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_int_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_int" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_int" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_int * a = gsl_vector_int_calloc (1027);
gsl_vector_int * b = gsl_vector_int_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (a, i, (int)(3 + i));
gsl_vector_int_set (b, i, (int)(3 + 2 * i));
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_int" "_add vector addition");
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_int" "_sub vector subtraction");
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_int" "_mul multiplication");
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_int" "_div division");
}
gsl_vector_int_free (a);
gsl_vector_int_free (b);
}
gsl_vector_int_free (v);
}
void
test_int_binary (void)
{
gsl_vector_int * v = gsl_vector_int_calloc (1027);
gsl_vector_int * w = gsl_vector_int_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) (1027 - i));
};
gsl_vector_int_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_int_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (int) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_int" "_write and read");
fclose (f);
}
gsl_vector_int_free (v);
gsl_vector_int_free (w);
}
void
test_int_trap (void)
{
gsl_vector_int * v = gsl_vector_int_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_int_set (v, j - 1, (int)0);
gsl_test (!status, "gsl_vector_int" "_set traps index below lower bound");
status = 0;
gsl_vector_int_set (v, 1027 + 1, (int)0);
gsl_test (!status, "gsl_vector_int" "_set traps index above upper bound");
status = 0;
gsl_vector_int_set (v, 1027, (int)0);
gsl_test (!status, "gsl_vector_int" "_set traps index at upper bound");
status = 0;
x = gsl_vector_int_get (v, j - 1);
gsl_test (!status, "gsl_vector_int" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_int" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_int_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_int" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_int" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_int_get (v, 1027);
gsl_test (!status, "gsl_vector_int" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_int" "_get returns zero for index at upper bound");
gsl_vector_int_free (v);
}
# 113 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_int_text (void);
void
test_int_text (void)
{
gsl_vector_int * v = gsl_vector_int_alloc (1027);
gsl_vector_int * w = gsl_vector_int_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) i);
};
gsl_vector_int_fprintf (f, v, "%d");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_int_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (int) i)
status = 1;
};
gsl_test (status, "gsl_vector_int" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_int_free (v);
gsl_vector_int_free (w);
}
# 114 "test.c" 2
# 1 "../templates_off.h" 1
# 115 "test.c" 2
# 1 "../templates_on.h" 1
# 119 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_ushort_func (void);
void test_ushort_binary (void);
void test_ushort_trap (void);
void
test_ushort_func (void)
{
gsl_vector_ushort * v;
size_t i;
v = gsl_vector_ushort_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_ushort" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_ushort" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_ushort" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ushort" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_ushort_get (v, i) != (unsigned short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ushort" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_ushort_get (v, i) != (unsigned short) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned short) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) i);
}
gsl_vector_ushort_swap_elements (v, 2, 5) ;
status = (gsl_vector_ushort_get(v,2) != 5) ;
status |= (gsl_vector_ushort_get(v,5) != 2) ;
gsl_vector_ushort_swap_elements (v, 2, 5) ;
status |= (gsl_vector_ushort_get(v,2) != 2) ;
status |= (gsl_vector_ushort_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_ushort" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_ushort_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_ushort_get (v, i) != (unsigned short) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_ushort" "_reverse" " (static)" " reverses elements") ;
{
unsigned short exp_max = gsl_vector_ushort_get(v, 0);
unsigned short exp_min = gsl_vector_ushort_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned short k = gsl_vector_ushort_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_ushort_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned short k = gsl_vector_ushort_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_ushort_get (v, i) ;
exp_imax = i;
}
}
{
unsigned short max = gsl_vector_ushort_max (v) ;
gsl_test (max != exp_max, "gsl_vector_ushort" "_max returns correct maximum value");
}
{
unsigned short min = gsl_vector_ushort_min (v) ;
gsl_test (min != exp_min, "gsl_vector_ushort" "_min returns correct minimum value");
}
{
unsigned short min, max;
gsl_vector_ushort_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_ushort" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_ushort" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_ushort_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_ushort" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_ushort_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_ushort" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_ushort_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_ushort" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_ushort" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_ushort * a = gsl_vector_ushort_calloc (1027);
gsl_vector_ushort * b = gsl_vector_ushort_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (a, i, (unsigned short)(3 + i));
gsl_vector_ushort_set (b, i, (unsigned short)(3 + 2 * i));
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_add vector addition");
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_sub vector subtraction");
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_mul multiplication");
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_div division");
}
gsl_vector_ushort_free (a);
gsl_vector_ushort_free (b);
}
gsl_vector_ushort_free (v);
}
void
test_ushort_binary (void)
{
gsl_vector_ushort * v = gsl_vector_ushort_calloc (1027);
gsl_vector_ushort * w = gsl_vector_ushort_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) (1027 - i));
};
gsl_vector_ushort_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_ushort_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned short) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_write and read");
fclose (f);
}
gsl_vector_ushort_free (v);
gsl_vector_ushort_free (w);
}
void
test_ushort_trap (void)
{
gsl_vector_ushort * v = gsl_vector_ushort_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_ushort_set (v, j - 1, (unsigned short)0);
gsl_test (!status, "gsl_vector_ushort" "_set traps index below lower bound");
status = 0;
gsl_vector_ushort_set (v, 1027 + 1, (unsigned short)0);
gsl_test (!status, "gsl_vector_ushort" "_set traps index above upper bound");
status = 0;
gsl_vector_ushort_set (v, 1027, (unsigned short)0);
gsl_test (!status, "gsl_vector_ushort" "_set traps index at upper bound");
status = 0;
x = gsl_vector_ushort_get (v, j - 1);
gsl_test (!status, "gsl_vector_ushort" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_ushort" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_ushort_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_ushort" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_ushort" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_ushort_get (v, 1027);
gsl_test (!status, "gsl_vector_ushort" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_ushort" "_get returns zero for index at upper bound");
gsl_vector_ushort_free (v);
}
# 120 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_ushort_text (void);
void
test_ushort_text (void)
{
gsl_vector_ushort * v = gsl_vector_ushort_alloc (1027);
gsl_vector_ushort * w = gsl_vector_ushort_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) i);
};
gsl_vector_ushort_fprintf (f, v, "%hu");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_ushort_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned short) i)
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_ushort_free (v);
gsl_vector_ushort_free (w);
}
# 121 "test.c" 2
# 1 "../templates_off.h" 1
# 122 "test.c" 2
# 1 "../templates_on.h" 1
# 126 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_short_func (void);
void test_short_binary (void);
void test_short_trap (void);
void
test_short_func (void)
{
gsl_vector_short * v;
size_t i;
v = gsl_vector_short_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_short" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_short" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_short" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_short" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_short_get (v, i) != (short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_short" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_short_get (v, i) != (short) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_short" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_short_set (v, i, (short) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (short) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_short" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) i);
}
gsl_vector_short_swap_elements (v, 2, 5) ;
status = (gsl_vector_short_get(v,2) != 5) ;
status |= (gsl_vector_short_get(v,5) != 2) ;
gsl_vector_short_swap_elements (v, 2, 5) ;
status |= (gsl_vector_short_get(v,2) != 2) ;
status |= (gsl_vector_short_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_short" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_short_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_short_get (v, i) != (short) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_short" "_reverse" " (static)" " reverses elements") ;
{
short exp_max = gsl_vector_short_get(v, 0);
short exp_min = gsl_vector_short_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
short k = gsl_vector_short_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_short_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
short k = gsl_vector_short_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_short_get (v, i) ;
exp_imax = i;
}
}
{
short max = gsl_vector_short_max (v) ;
gsl_test (max != exp_max, "gsl_vector_short" "_max returns correct maximum value");
}
{
short min = gsl_vector_short_min (v) ;
gsl_test (min != exp_min, "gsl_vector_short" "_min returns correct minimum value");
}
{
short min, max;
gsl_vector_short_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_short" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_short" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_short_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_short" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_short_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_short" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_short_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_short" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_short" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_short * a = gsl_vector_short_calloc (1027);
gsl_vector_short * b = gsl_vector_short_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (a, i, (short)(3 + i));
gsl_vector_short_set (b, i, (short)(3 + 2 * i));
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_short" "_add vector addition");
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_short" "_sub vector subtraction");
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_short" "_mul multiplication");
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_short" "_div division");
}
gsl_vector_short_free (a);
gsl_vector_short_free (b);
}
gsl_vector_short_free (v);
}
void
test_short_binary (void)
{
gsl_vector_short * v = gsl_vector_short_calloc (1027);
gsl_vector_short * w = gsl_vector_short_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) (1027 - i));
};
gsl_vector_short_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_short_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (short) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_short" "_write and read");
fclose (f);
}
gsl_vector_short_free (v);
gsl_vector_short_free (w);
}
void
test_short_trap (void)
{
gsl_vector_short * v = gsl_vector_short_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_short_set (v, j - 1, (short)0);
gsl_test (!status, "gsl_vector_short" "_set traps index below lower bound");
status = 0;
gsl_vector_short_set (v, 1027 + 1, (short)0);
gsl_test (!status, "gsl_vector_short" "_set traps index above upper bound");
status = 0;
gsl_vector_short_set (v, 1027, (short)0);
gsl_test (!status, "gsl_vector_short" "_set traps index at upper bound");
status = 0;
x = gsl_vector_short_get (v, j - 1);
gsl_test (!status, "gsl_vector_short" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_short" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_short_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_short" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_short" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_short_get (v, 1027);
gsl_test (!status, "gsl_vector_short" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_short" "_get returns zero for index at upper bound");
gsl_vector_short_free (v);
}
# 127 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_short_text (void);
void
test_short_text (void)
{
gsl_vector_short * v = gsl_vector_short_alloc (1027);
gsl_vector_short * w = gsl_vector_short_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) i);
};
gsl_vector_short_fprintf (f, v, "%hd");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_short_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (short) i)
status = 1;
};
gsl_test (status, "gsl_vector_short" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_short_free (v);
gsl_vector_short_free (w);
}
# 128 "test.c" 2
# 1 "../templates_off.h" 1
# 129 "test.c" 2
# 1 "../templates_on.h" 1
# 133 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_uchar_func (void);
void test_uchar_binary (void);
void test_uchar_trap (void);
void
test_uchar_func (void)
{
gsl_vector_uchar * v;
size_t i;
v = gsl_vector_uchar_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_uchar" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_uchar" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_uchar" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uchar" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_uchar_get (v, i) != (unsigned char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uchar" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_uchar_get (v, i) != (unsigned char) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned char) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) i);
}
gsl_vector_uchar_swap_elements (v, 2, 5) ;
status = (gsl_vector_uchar_get(v,2) != 5) ;
status |= (gsl_vector_uchar_get(v,5) != 2) ;
gsl_vector_uchar_swap_elements (v, 2, 5) ;
status |= (gsl_vector_uchar_get(v,2) != 2) ;
status |= (gsl_vector_uchar_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_uchar" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_uchar_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_uchar_get (v, i) != (unsigned char) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_uchar" "_reverse" " (static)" " reverses elements") ;
{
unsigned char exp_max = gsl_vector_uchar_get(v, 0);
unsigned char exp_min = gsl_vector_uchar_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned char k = gsl_vector_uchar_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_uchar_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned char k = gsl_vector_uchar_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_uchar_get (v, i) ;
exp_imax = i;
}
}
{
unsigned char max = gsl_vector_uchar_max (v) ;
gsl_test (max != exp_max, "gsl_vector_uchar" "_max returns correct maximum value");
}
{
unsigned char min = gsl_vector_uchar_min (v) ;
gsl_test (min != exp_min, "gsl_vector_uchar" "_min returns correct minimum value");
}
{
unsigned char min, max;
gsl_vector_uchar_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_uchar" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_uchar" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_uchar_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_uchar" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_uchar_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_uchar" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_uchar_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_uchar" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_uchar" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_uchar * a = gsl_vector_uchar_calloc (1027);
gsl_vector_uchar * b = gsl_vector_uchar_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (a, i, (unsigned char)(3 + i));
gsl_vector_uchar_set (b, i, (unsigned char)(3 + 2 * i));
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_add vector addition");
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_sub vector subtraction");
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_mul multiplication");
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_div division");
}
gsl_vector_uchar_free (a);
gsl_vector_uchar_free (b);
}
gsl_vector_uchar_free (v);
}
void
test_uchar_binary (void)
{
gsl_vector_uchar * v = gsl_vector_uchar_calloc (1027);
gsl_vector_uchar * w = gsl_vector_uchar_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) (1027 - i));
};
gsl_vector_uchar_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_uchar_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned char) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_write and read");
fclose (f);
}
gsl_vector_uchar_free (v);
gsl_vector_uchar_free (w);
}
void
test_uchar_trap (void)
{
gsl_vector_uchar * v = gsl_vector_uchar_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_uchar_set (v, j - 1, (unsigned char)0);
gsl_test (!status, "gsl_vector_uchar" "_set traps index below lower bound");
status = 0;
gsl_vector_uchar_set (v, 1027 + 1, (unsigned char)0);
gsl_test (!status, "gsl_vector_uchar" "_set traps index above upper bound");
status = 0;
gsl_vector_uchar_set (v, 1027, (unsigned char)0);
gsl_test (!status, "gsl_vector_uchar" "_set traps index at upper bound");
status = 0;
x = gsl_vector_uchar_get (v, j - 1);
gsl_test (!status, "gsl_vector_uchar" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_uchar" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_uchar_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_uchar" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_uchar" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_uchar_get (v, 1027);
gsl_test (!status, "gsl_vector_uchar" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_uchar" "_get returns zero for index at upper bound");
gsl_vector_uchar_free (v);
}
# 134 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_uchar_text (void);
void
test_uchar_text (void)
{
gsl_vector_uchar * v = gsl_vector_uchar_alloc (1027);
gsl_vector_uchar * w = gsl_vector_uchar_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) i);
};
gsl_vector_uchar_fprintf (f, v, "%u");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_uchar_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned char) i)
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_uchar_free (v);
gsl_vector_uchar_free (w);
}
# 135 "test.c" 2
# 1 "../templates_off.h" 1
# 136 "test.c" 2
# 1 "../templates_on.h" 1
# 140 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_char_func (void);
void test_char_binary (void);
void test_char_trap (void);
void
test_char_func (void)
{
gsl_vector_char * v;
size_t i;
v = gsl_vector_char_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_char" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_char" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_char" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_char" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_char_get (v, i) != (char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_char" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_char_get (v, i) != (char) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_char" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_char_set (v, i, (char) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (char) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_char" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) i);
}
gsl_vector_char_swap_elements (v, 2, 5) ;
status = (gsl_vector_char_get(v,2) != 5) ;
status |= (gsl_vector_char_get(v,5) != 2) ;
gsl_vector_char_swap_elements (v, 2, 5) ;
status |= (gsl_vector_char_get(v,2) != 2) ;
status |= (gsl_vector_char_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_char" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_char_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_char_get (v, i) != (char) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_char" "_reverse" " (static)" " reverses elements") ;
{
char exp_max = gsl_vector_char_get(v, 0);
char exp_min = gsl_vector_char_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
char k = gsl_vector_char_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_char_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
char k = gsl_vector_char_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_char_get (v, i) ;
exp_imax = i;
}
}
{
char max = gsl_vector_char_max (v) ;
gsl_test (max != exp_max, "gsl_vector_char" "_max returns correct maximum value");
}
{
char min = gsl_vector_char_min (v) ;
gsl_test (min != exp_min, "gsl_vector_char" "_min returns correct minimum value");
}
{
char min, max;
gsl_vector_char_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_char" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_char" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_char_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_char" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_char_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_char" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_char_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_char" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_char" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_char * a = gsl_vector_char_calloc (1027);
gsl_vector_char * b = gsl_vector_char_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (a, i, (char)(3 + i));
gsl_vector_char_set (b, i, (char)(3 + 2 * i));
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_char" "_add vector addition");
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_char" "_sub vector subtraction");
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_char" "_mul multiplication");
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_char" "_div division");
}
gsl_vector_char_free (a);
gsl_vector_char_free (b);
}
gsl_vector_char_free (v);
}
void
test_char_binary (void)
{
gsl_vector_char * v = gsl_vector_char_calloc (1027);
gsl_vector_char * w = gsl_vector_char_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) (1027 - i));
};
gsl_vector_char_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_char_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (char) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_char" "_write and read");
fclose (f);
}
gsl_vector_char_free (v);
gsl_vector_char_free (w);
}
void
test_char_trap (void)
{
gsl_vector_char * v = gsl_vector_char_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_char_set (v, j - 1, (char)0);
gsl_test (!status, "gsl_vector_char" "_set traps index below lower bound");
status = 0;
gsl_vector_char_set (v, 1027 + 1, (char)0);
gsl_test (!status, "gsl_vector_char" "_set traps index above upper bound");
status = 0;
gsl_vector_char_set (v, 1027, (char)0);
gsl_test (!status, "gsl_vector_char" "_set traps index at upper bound");
status = 0;
x = gsl_vector_char_get (v, j - 1);
gsl_test (!status, "gsl_vector_char" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_char" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_char_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_char" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_char" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_char_get (v, 1027);
gsl_test (!status, "gsl_vector_char" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_char" "_get returns zero for index at upper bound");
gsl_vector_char_free (v);
}
# 141 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_char_text (void);
void
test_char_text (void)
{
gsl_vector_char * v = gsl_vector_char_alloc (1027);
gsl_vector_char * w = gsl_vector_char_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) i);
};
gsl_vector_char_fprintf (f, v, "%d");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_char_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (char) i)
status = 1;
};
gsl_test (status, "gsl_vector_char" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_char_free (v);
gsl_vector_char_free (w);
}
# 142 "test.c" 2
# 1 "../templates_off.h" 1
# 143 "test.c" 2
void my_error_handler (const char *reason, const char *file,
int line, int err);
int
main (void)
{
gsl_ieee_env_setup ();
test_func ();
test_float_func ();
test_long_double_func ();
test_ulong_func ();
test_long_func ();
test_uint_func ();
test_int_func ();
test_ushort_func ();
test_short_func ();
test_uchar_func ();
test_char_func ();
test_complex_func ();
test_complex_float_func ();
test_complex_long_double_func ();
test_text ();
test_float_text ();
test_long_double_text ();
test_ulong_text ();
test_long_text ();
test_uint_text ();
test_int_text ();
test_ushort_text ();
test_short_text ();
test_uchar_text ();
test_char_text ();
test_complex_text ();
test_complex_float_text ();
test_complex_long_double_text ();
test_binary ();
test_float_binary ();
test_long_double_binary ();
test_ulong_binary ();
test_long_binary ();
test_uint_binary ();
test_int_binary ();
test_ushort_binary ();
test_short_binary ();
test_uchar_binary ();
test_char_binary ();
test_complex_binary ();
test_complex_float_binary ();
test_complex_long_double_binary ();
gsl_warnings_off = 1;
gsl_set_error_handler (&my_error_handler);
test_trap ();
test_float_trap ();
test_long_double_trap ();
test_ulong_trap ();
test_long_trap ();
test_uint_trap ();
test_int_trap ();
test_ushort_trap ();
test_short_trap ();
test_uchar_trap ();
test_char_trap ();
test_complex_trap ();
test_complex_float_trap ();
test_complex_long_double_trap ();
exit (gsl_test_summary ());
}
void
my_error_handler (const char *reason, const char *file, int line, int err)
{
if (0)
printf ("(caught [%s:%d: %s (%d)])\n", file, line, reason, err);
status = 1;
}
# 7 "test_static.c" 2
--0-950081385-1049927687=:98732--
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-09 22:36 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-09 22:36 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: bangerth@dealii.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Wed, 9 Apr 2003 15:30:54 -0700 (PDT)
--0-680902919-1049927454=:38667
Content-Type: text/plain; charset=us-ascii
Content-Id:
Content-Disposition: inline
I have attached two .i files in original filing,
actually they are in ifiles.tar.gz
I am sending the files again. If this is not what you
expected I apologize that I am that stupid and ask you
to send me a list of what you want.
Regards,
Yuri
--- bangerth@dealii.org wrote:
> Synopsis: Seems like bug in code generator on Sun
> Sparc (Sol;aris 8) platform
>
> State-Changed-From-To: open->feedback
> State-Changed-By: bangerth
> State-Changed-When: Wed Apr 9 21:01:00 2003
> State-Changed-Why:
> We need some preprocessed sources to reproduce
> the problem.
> Please review
> http://gcc.gnu.org/bugs.html
> to see what exactly we need.
>
> Regards
> Wolfgang
>
>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
--0-680902919-1049927454=:38667
Content-Type: text/plain; name="test_static.i"
Content-Description: test_static.i
Content-Disposition: inline; filename="test_static.i"
# 1 "test_static.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "test_static.c"
# 1 "test.c" 1
# 20 "test.c"
# 1 "../config.h" 1
# 21 "test.c" 2
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 40 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 2 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
typedef unsigned int size_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 140 "/usr/include/stdlib.h" 3 4
typedef int ssize_t;
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 27 "test.c" 2
# 1 "/usr/include/fcntl.h" 1 3 4
# 16 "/usr/include/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.14 97/12/05 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
#pragma ident "@(#)types.h 1.68 02/06/10 SMI"
# 1 "/usr/include/sys/machtypes.h" 1 3 4
# 16 "/usr/include/sys/machtypes.h" 3 4
#pragma ident "@(#)machtypes.h 1.13 99/05/04 SMI"
# 33 "/usr/include/sys/machtypes.h" 3 4
typedef struct _label_t { long val[2]; } label_t;
typedef unsigned char lock_t;
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 45 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
# 1 "/usr/include/sys/int_types.h" 1 3 4
# 9 "/usr/include/sys/int_types.h" 3 4
#pragma ident "@(#)int_types.h 1.6 97/08/20 SMI"
# 62 "/usr/include/sys/int_types.h" 3 4
typedef char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef long long int64_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
# 94 "/usr/include/sys/int_types.h" 3 4
typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
# 110 "/usr/include/sys/int_types.h" 3 4
typedef int intptr_t;
typedef unsigned int uintptr_t;
typedef char int_least8_t;
typedef short int_least16_t;
typedef int int_least32_t;
typedef long long int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned long long uint_least64_t;
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long long longlong_t;
typedef unsigned long long u_longlong_t;
# 85 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long t_scalar_t;
typedef unsigned long t_uscalar_t;
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef char *caddr_t;
typedef long daddr_t;
typedef short cnt_t;
typedef ulong_t paddr_t;
# 118 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int ptrdiff_t;
# 127 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t pfn_t;
typedef ulong_t pgcnt_t;
typedef long spgcnt_t;
typedef uchar_t use_t;
typedef short sysid_t;
typedef short index_t;
typedef void *timeout_id_t;
typedef void *bufcall_id_t;
# 149 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long off_t;
# 158 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t off64_t;
typedef ulong_t ino_t;
typedef long blkcnt_t;
typedef ulong_t fsblkcnt_t;
typedef ulong_t fsfilcnt_t;
# 183 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef u_longlong_t ino64_t;
typedef longlong_t blkcnt64_t;
typedef u_longlong_t fsblkcnt64_t;
typedef u_longlong_t fsfilcnt64_t;
typedef long blksize_t;
typedef enum { B_FALSE, B_TRUE } boolean_t;
# 210 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int64_t pad64_t;
typedef uint64_t upad64_t;
# 223 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t offset_t;
typedef u_longlong_t u_offset_t;
typedef u_longlong_t len_t;
typedef longlong_t diskaddr_t;
# 244 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
offset_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lloff_t;
# 264 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
diskaddr_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lldaddr_t;
typedef uint_t k_fltset_t;
# 287 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long id_t;
typedef uint_t useconds_t;
typedef long suseconds_t;
# 308 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t major_t;
typedef ulong_t minor_t;
typedef short pri_t;
# 328 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ushort_t o_mode_t;
typedef short o_dev_t;
typedef ushort_t o_uid_t;
typedef o_uid_t o_gid_t;
typedef short o_nlink_t;
typedef short o_pid_t;
typedef ushort_t o_ino_t;
typedef int key_t;
typedef ulong_t mode_t;
# 356 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef uid_t gid_t;
typedef id_t taskid_t;
typedef id_t projid_t;
typedef uint_t pthread_t;
typedef uint_t pthread_key_t;
typedef struct _pthread_mutex {
struct {
uint16_t __pthread_mutex_flag1;
uint8_t __pthread_mutex_flag2;
uint8_t __pthread_mutex_ceiling;
uint16_t __pthread_mutex_type;
uint16_t __pthread_mutex_magic;
} __pthread_mutex_flags;
union {
struct {
uint8_t __pthread_mutex_pad[8];
} __pthread_mutex_lock64;
struct {
uint32_t __pthread_ownerpid;
uint32_t __pthread_lockword;
} __pthread_mutex_lock32;
upad64_t __pthread_mutex_owner64;
} __pthread_mutex_lock;
upad64_t __pthread_mutex_data;
} pthread_mutex_t;
typedef struct _pthread_cond {
struct {
uint8_t __pthread_cond_flag[4];
uint16_t __pthread_cond_type;
uint16_t __pthread_cond_magic;
} __pthread_cond_flags;
upad64_t __pthread_cond_data;
} pthread_cond_t;
typedef struct _pthread_rwlock {
int32_t __pthread_rwlock_readers;
uint16_t __pthread_rwlock_type;
uint16_t __pthread_rwlock_magic;
upad64_t __pthread_rwlock_pad1[3];
upad64_t __pthread_rwlock_pad2[2];
upad64_t __pthread_rwlock_pad3[2];
} pthread_rwlock_t;
typedef struct _pthread_attr {
void *__pthread_attrp;
} pthread_attr_t;
typedef struct _pthread_mutexattr {
void *__pthread_mutexattrp;
} pthread_mutexattr_t;
typedef struct _pthread_condattr {
void *__pthread_condattrp;
} pthread_condattr_t;
typedef struct _once {
upad64_t __pthread_once_pad[4];
} pthread_once_t;
typedef struct _pthread_rwlockattr {
void *__pthread_rwlockattrp;
} pthread_rwlockattr_t;
typedef ulong_t dev_t;
typedef ulong_t nlink_t;
typedef long pid_t;
# 485 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long time_t;
typedef long clock_t;
typedef int clockid_t;
typedef int timer_t;
typedef unsigned char unchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
# 561 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef struct _quad { int val[2]; } quad_t;
typedef quad_t quad;
# 1 "/usr/include/sys/select.h" 1 3 4
# 12 "/usr/include/sys/select.h" 3 4
#pragma ident "@(#)select.h 1.16 98/04/27 SMI"
# 1 "/usr/include/sys/time.h" 1 3 4
# 22 "/usr/include/sys/time.h" 3 4
#pragma ident "@(#)time.h 2.66 01/01/17 SMI"
# 49 "/usr/include/sys/time.h" 3 4
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
# 82 "/usr/include/sys/time.h" 3 4
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
# 100 "/usr/include/sys/time.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 101 "/usr/include/sys/time.h" 2 3 4
# 155 "/usr/include/sys/time.h" 3 4
struct itimerval {
struct timeval it_interval;
struct timeval it_value;
};
# 203 "/usr/include/sys/time.h" 3 4
typedef longlong_t hrtime_t;
# 320 "/usr/include/sys/time.h" 3 4
int adjtime(struct timeval *, struct timeval *);
# 331 "/usr/include/sys/time.h" 3 4
int getitimer(int, struct itimerval *);
int utimes(const char *, const struct timeval *);
int setitimer(int, struct itimerval *, struct itimerval *);
# 369 "/usr/include/sys/time.h" 3 4
int settimeofday(struct timeval *, void *);
hrtime_t gethrtime(void);
hrtime_t gethrvtime(void);
# 389 "/usr/include/sys/time.h" 3 4
int gettimeofday(struct timeval *, void *);
# 410 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 16 "/usr/include/time.h" 3 4
#pragma ident "@(#)time.h 1.39 99/08/10 SMI"
# 1 "/usr/include/iso/time_iso.h" 1 3 4
# 28 "/usr/include/iso/time_iso.h" 3 4
#pragma ident "@(#)time_iso.h 1.1 99/08/09 SMI"
# 69 "/usr/include/iso/time_iso.h" 3 4
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
extern char *asctime(const struct tm *);
extern clock_t clock(void);
extern char *ctime(const time_t *);
extern double difftime(time_t, time_t);
extern struct tm *gmtime(const time_t *);
extern struct tm *localtime(const time_t *);
extern time_t mktime(struct tm *);
extern time_t time(time_t *);
extern size_t strftime(char *, size_t, const char *, const struct tm *);
# 21 "/usr/include/time.h" 2 3 4
# 67 "/usr/include/time.h" 3 4
extern char *strptime(const char *, const char *, struct tm *);
# 83 "/usr/include/time.h" 3 4
# 1 "/usr/include/sys/time_impl.h" 1 3 4
# 15 "/usr/include/sys/time_impl.h" 3 4
#pragma ident "@(#)time_impl.h 1.5 99/10/05 SMI"
# 36 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec {
time_t tv_sec;
long tv_nsec;
} timespec_t;
# 60 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec timestruc_t;
# 79 "/usr/include/sys/time_impl.h" 3 4
typedef struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
} itimerspec_t;
# 84 "/usr/include/time.h" 2 3 4
# 98 "/usr/include/time.h" 3 4
union sigval {
int sival_int;
void *sival_ptr;
};
struct sigevent {
int sigev_notify;
int sigev_signo;
union sigval sigev_value;
void (*sigev_notify_function)(union sigval);
pthread_attr_t *sigev_notify_attributes;
int __sigev_pad2;
};
extern int clock_getres(clockid_t, struct timespec *);
extern int clock_gettime(clockid_t, struct timespec *);
extern int clock_settime(clockid_t, const struct timespec *);
extern int timer_create(clockid_t, struct sigevent *, timer_t *);
extern int timer_delete(timer_t);
extern int timer_getoverrun(timer_t);
extern int timer_gettime(timer_t, struct itimerspec *);
extern int timer_settime(timer_t, int, const struct itimerspec *,
struct itimerspec *);
extern int nanosleep(const struct timespec *, struct timespec *);
extern void tzset(void);
extern char *tzname[2];
extern long _sysconf(int);
extern long timezone;
extern int daylight;
extern int cftime(char *, char *, const time_t *);
extern int ascftime(char *, const char *, const struct tm *);
extern long altzone;
extern struct tm *getdate(const char *);
extern int getdate_err;
# 411 "/usr/include/sys/time.h" 2 3 4
# 423 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 424 "/usr/include/sys/time.h" 2 3 4
# 18 "/usr/include/sys/select.h" 2 3 4
# 45 "/usr/include/sys/select.h" 3 4
typedef long fd_mask;
typedef long fds_mask;
# 73 "/usr/include/sys/select.h" 3 4
typedef struct fd_set {
long fds_bits[(((1024)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))];
} fd_set;
# 97 "/usr/include/sys/select.h" 3 4
extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 574 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 24 "/usr/include/fcntl.h" 2 3 4
# 1 "/usr/include/sys/fcntl.h" 1 3 4
# 16 "/usr/include/sys/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.45 98/07/17 SMI"
# 164 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock {
short l_type;
short l_whence;
off_t l_start;
off_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock_t;
# 194 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock64 {
short l_type;
short l_whence;
off64_t l_start;
off64_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock64_t;
# 272 "/usr/include/sys/fcntl.h" 3 4
typedef struct fshare {
short f_access;
short f_deny;
int f_id;
} fshare_t;
# 25 "/usr/include/fcntl.h" 2 3 4
# 72 "/usr/include/fcntl.h" 3 4
extern int fcntl(int, int, ...);
extern int open(const char *, int, ...);
extern int creat(const char *, mode_t);
extern int directio(int, int);
extern int open64(const char *, int, ...);
extern int creat64(const char *, mode_t);
# 28 "test.c" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
# 88 "/usr/include/iso/stdio_iso.h" 3 4
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 29 "test.c" 2
# 1 "../gsl/gsl_math.h" 1
# 22 "../gsl/gsl_math.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 1 3 4
# 23 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
#pragma ident "@(#)math.h 2.10 99/07/29 SMI"
# 1 "/usr/include/iso/math_iso.h" 1 3 4
#pragma ident "@(#)math_iso.h 1.1 99/07/30 SMI"
# 20 "/usr/include/iso/math_iso.h" 3 4
typedef union _h_val {
unsigned long _i[sizeof(double) / sizeof(unsigned long)];
double _d;
} _h_val;
extern const _h_val __huge_val;
# 37 "/usr/include/iso/math_iso.h" 3 4
extern double acos (double);
extern double asin (double);
extern double atan (double);
extern double atan2 (double, double);
extern double cos (double);
extern double sin (double);
extern double tan (double);
extern double cosh (double);
extern double sinh (double);
extern double tanh (double);
extern double exp (double);
extern double frexp (double, int *);
extern double ldexp (double, int);
extern double log (double);
extern double log10 (double);
extern double modf (double, double *);
extern double pow (double, double);
extern double sqrt (double);
extern double ceil (double);
extern double fabs (double);
extern double floor (double);
extern double fmod (double, double);
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 89 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int signgam;
enum version {libm_ieee = -1, c_issue_4, ansi_1, strict_ansi};
extern const enum version _lib_version;
struct exception {
int type;
char *name;
double arg1;
double arg2;
double retval;
};
# 145 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double erf (double);
extern double erfc (double);
extern double gamma (double);
extern double hypot (double, double);
extern int isnan (double);
extern double j0 (double);
extern double j1 (double);
extern double jn (int, double);
extern double lgamma (double);
extern double y0 (double);
extern double y1 (double);
extern double yn (int, double);
# 172 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double acosh (double);
extern double asinh (double);
extern double atanh (double);
extern double cbrt (double);
extern double logb (double);
extern double nextafter (double, double);
extern double remainder (double, double);
extern double scalb (double, double);
# 192 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double expm1 (double);
extern int ilogb (double);
extern double log1p (double);
extern double rint (double);
# 208 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int matherr (struct exception *);
extern double significand (double);
extern double copysign (double, double);
extern double scalbn (double, int);
# 243 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern float modff (float, float *);
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 1 3 4
# 20 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
#pragma ident "@(#)floatingpoint.h 2.5 99/06/22 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 1 3 4
# 17 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
#pragma ident "@(#)ieeefp.h 2.8 99/10/29"
# 27 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_direction_type {
fp_nearest = 0,
fp_tozero = 1,
fp_positive = 2,
fp_negative = 3
};
enum fp_precision_type {
fp_extended = 0,
fp_single = 1,
fp_double = 2,
fp_precision_3 = 3
};
enum fp_exception_type {
fp_inexact = 0,
fp_division = 1,
fp_underflow = 2,
fp_overflow = 3,
fp_invalid = 4
};
enum fp_trap_enable_type {
fp_trap_inexact = 0,
fp_trap_division = 1,
fp_trap_underflow = 2,
fp_trap_overflow = 3,
fp_trap_invalid = 4
};
# 133 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_class_type {
fp_zero = 0,
fp_subnormal = 1,
fp_normal = 2,
fp_infinity = 3,
fp_quiet = 4,
fp_signaling = 5
};
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef int sigfpe_code_type;
typedef void (*sigfpe_handler_type)();
extern sigfpe_handler_type sigfpe (sigfpe_code_type, sigfpe_handler_type);
typedef float single;
typedef unsigned extended[3];
typedef long double quadruple;
typedef unsigned fp_exception_field_type;
# 94 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef char decimal_string[512];
typedef struct {
enum fp_class_type fpclass;
int sign;
int exponent;
decimal_string ds;
int more;
int ndigits;
} decimal_record;
enum decimal_form {
fixed_form,
floating_form
};
typedef struct {
enum fp_direction_type rd;
enum decimal_form df;
int ndigits;
} decimal_mode;
enum decimal_string_form {
invalid_form,
whitespace_form,
fixed_int_form,
fixed_intdot_form,
fixed_dotfrac_form,
fixed_intdotfrac_form,
floating_int_form,
floating_intdot_form,
floating_dotfrac_form,
floating_intdotfrac_form,
inf_form,
infinity_form,
nan_form,
nanstring_form
};
extern void single_to_decimal (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void double_to_decimal (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void extended_to_decimal (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void quadruple_to_decimal (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_single (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_double (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_extended (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_quadruple (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void string_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **);
extern void func_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, int (*)(void), int *, int (*)(int));
extern void file_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, FILE *, int *);
extern char *seconvert (single *, int, int *, int *, char *);
extern char *sfconvert (single *, int, int *, int *, char *);
extern char *sgconvert (single *, int, int, char *);
extern char *econvert (double, int, int *, int *, char *);
extern char *fconvert (double, int, int *, int *, char *);
extern char *gconvert (double, int, int, char *);
extern char *qeconvert (quadruple *, int, int *, int *, char *);
extern char *qfconvert (quadruple *, int, int *, int *, char *);
extern char *qgconvert (quadruple *, int, int, char *);
extern char *ecvt (double, int, int *, int *);
extern char *fcvt (double, int, int *, int *);
extern char *gcvt (double, int, char *);
extern double atof (const char *);
extern double strtod (const char *, char **);
# 251 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 23 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_sys.h" 1
# 33 "../gsl/gsl_sys.h"
double gsl_log1p (const double x);
double gsl_expm1 (const double x);
double gsl_hypot (const double x, const double y);
double gsl_acosh (const double x);
double gsl_asinh (const double x);
double gsl_atanh (const double x);
int gsl_isnan (const double x);
int gsl_isinf (const double x);
int gsl_finite (const double x);
double gsl_nan (void);
double gsl_posinf (void);
double gsl_neginf (void);
double gsl_fdiv (const double x, const double y);
double gsl_coerce_double (const double x);
float gsl_coerce_float (const float x);
long double gsl_coerce_long_double (const long double x);
double gsl_ldexp(const double x, const int e);
double gsl_frexp(const double x, int * e);
int gsl_fcmp (const double x1, const double x2, const double epsilon);
# 24 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_machine.h" 1
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 1 3 4
# 11 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
#pragma ident "@(#)limits.h 1.51 99/10/08 SMI"
# 1 "/usr/include/iso/limits_iso.h" 1 3 4
# 28 "/usr/include/iso/limits_iso.h" 3 4
#pragma ident "@(#)limits_iso.h 1.1 99/08/09 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 41 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
# 1 "/usr/include/sys/int_limits.h" 1 3 4
# 9 "/usr/include/sys/int_limits.h" 3 4
#pragma ident "@(#)int_limits.h 1.6 99/08/06 SMI"
# 42 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 12 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 2 3 4
# 6 "../gsl/gsl_machine.h" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/float.h" 1 3 4
# 7 "../gsl/gsl_machine.h" 2
# 25 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_precision.h" 1
# 24 "../gsl/gsl_precision.h"
# 1 "../gsl/gsl_types.h" 1
# 25 "../gsl/gsl_precision.h" 2
# 36 "../gsl/gsl_precision.h"
typedef unsigned int gsl_prec_t;
# 56 "../gsl/gsl_precision.h"
extern const double gsl_prec_eps[];
extern const double gsl_prec_sqrt_eps[];
extern const double gsl_prec_root3_eps[];
extern const double gsl_prec_root4_eps[];
extern const double gsl_prec_root5_eps[];
extern const double gsl_prec_root6_eps[];
# 26 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_nan.h" 1
# 27 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_pow_int.h" 1
# 33 "../gsl/gsl_pow_int.h"
extern inline double gsl_pow_2(const double x);
extern inline double gsl_pow_3(const double x);
extern inline double gsl_pow_4(const double x);
extern inline double gsl_pow_5(const double x);
extern inline double gsl_pow_6(const double x);
extern inline double gsl_pow_7(const double x);
extern inline double gsl_pow_8(const double x);
extern inline double gsl_pow_9(const double x);
extern inline double gsl_pow_2(const double x) { return x*x; }
extern inline double gsl_pow_3(const double x) { return x*x*x; }
extern inline double gsl_pow_4(const double x) { double x2 = x*x; return x2*x2; }
extern inline double gsl_pow_5(const double x) { double x2 = x*x; return x2*x2*x; }
extern inline double gsl_pow_6(const double x) { double x2 = x*x; return x2*x2*x2; }
extern inline double gsl_pow_7(const double x) { double x3 = x*x*x; return x3*x3*x; }
extern inline double gsl_pow_8(const double x) { double x2 = x*x; double x4 = x2*x2; return x4*x4; }
extern inline double gsl_pow_9(const double x) { double x3 = x*x*x; return x3*x3*x3; }
# 64 "../gsl/gsl_pow_int.h"
double gsl_pow_int(double x, int n);
# 28 "../gsl/gsl_math.h" 2
# 108 "../gsl/gsl_math.h"
# 126 "../gsl/gsl_math.h"
double gsl_max (double a, double b);
double gsl_min (double a, double b);
extern inline int GSL_MAX_INT (int a, int b);
extern inline int GSL_MIN_INT (int a, int b);
extern inline double GSL_MAX_DBL (double a, double b);
extern inline double GSL_MIN_DBL (double a, double b);
extern inline long double GSL_MAX_LDBL (long double a, long double b);
extern inline long double GSL_MIN_LDBL (long double a, long double b);
extern inline int
GSL_MAX_INT (int a, int b)
{
return ((a) > (b) ? (a) : (b));
}
extern inline int
GSL_MIN_INT (int a, int b)
{
return ((a) < (b) ? (a) : (b));
}
extern inline double
GSL_MAX_DBL (double a, double b)
{
return ((a) > (b) ? (a) : (b));
}
extern inline double
GSL_MIN_DBL (double a, double b)
{
return ((a) < (b) ? (a) : (b));
}
extern inline long double
GSL_MAX_LDBL (long double a, long double b)
{
return ((a) > (b) ? (a) : (b));
}
extern inline long double
GSL_MIN_LDBL (long double a, long double b)
{
return ((a) < (b) ? (a) : (b));
}
# 185 "../gsl/gsl_math.h"
struct gsl_function_struct
{
double (* function) (double x, void * params);
void * params;
};
typedef struct gsl_function_struct gsl_function ;
struct gsl_function_fdf_struct
{
double (* f) (double x, void * params);
double (* df) (double x, void * params);
void (* fdf) (double x, void * params, double * f, double * df);
void * params;
};
typedef struct gsl_function_fdf_struct gsl_function_fdf ;
# 214 "../gsl/gsl_math.h"
struct gsl_function_vec_struct
{
int (* function) (double x, double y[], void * params);
void * params;
};
typedef struct gsl_function_vec_struct gsl_function_vec ;
# 30 "test.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 25 "../gsl/gsl_vector_complex_long_double.h"
# 1 "../gsl/gsl_errno.h" 1
# 24 "../gsl/gsl_errno.h"
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 26 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
extern inline
long double
gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
long double *
gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (long double *) (v->data + i * v->stride);
}
extern inline
const long double *
gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long_double.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const long double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
extern inline
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v,
const size_t i)
{
if (i >= v->size)
{
const gsl_complex_long_double zero = {{0, 0}};
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 193, GSL_EINVAL) ; return zero ; } while (0);
}
return *((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v,
const size_t i, gsl_complex_long_double z)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 207, GSL_EINVAL) ; return ; } while (0);
}
*((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_long_double *
gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 221, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_long_double *
gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_long_double.h", 235, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_long_double*)&((v)->data[2*(i)*(v)->stride]));
}
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
extern inline
double
gsl_vector_get (const gsl_vector * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_set (gsl_vector * v, const size_t i, double x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
double *
gsl_vector_ptr (gsl_vector * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (double *) (v->data + i * v->stride);
}
extern inline
const double *
gsl_vector_const_ptr (const gsl_vector * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_double.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const double *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
extern inline
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v,
const size_t i)
{
if (i >= v->size)
{
const gsl_complex zero = {{0, 0}};
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 193, GSL_EINVAL) ; return zero ; } while (0);
}
return *((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_set (gsl_vector_complex * v,
const size_t i, gsl_complex z)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 207, GSL_EINVAL) ; return ; } while (0);
}
*((gsl_complex*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex *
gsl_vector_complex_ptr (gsl_vector_complex * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 221, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex *
gsl_vector_complex_const_ptr (const gsl_vector_complex * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_double.h", 235, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex*)&((v)->data[2*(i)*(v)->stride]));
}
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
extern inline
float
gsl_vector_float_get (const gsl_vector_float * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
float *
gsl_vector_float_ptr (gsl_vector_float * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (float *) (v->data + i * v->stride);
}
extern inline
const float *
gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_float.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const float *) (v->data + i * v->stride);
}
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
extern inline
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v,
const size_t i)
{
if (i >= v->size)
{
const gsl_complex_float zero = {{0, 0}};
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 193, GSL_EINVAL) ; return zero ; } while (0);
}
return *((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
void
gsl_vector_complex_float_set (gsl_vector_complex_float * v,
const size_t i, gsl_complex_float z)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 207, GSL_EINVAL) ; return ; } while (0);
}
*((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride])) = z;
}
extern inline
gsl_complex_float *
gsl_vector_complex_float_ptr (gsl_vector_complex_float * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 221, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
extern inline
const gsl_complex_float *
gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v,
const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_complex_float.h", 235, GSL_EINVAL) ; return 0 ; } while (0);
}
return ((gsl_complex_float*)&((v)->data[2*(i)*(v)->stride]));
}
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
extern inline
unsigned long
gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned long *
gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned long *) (v->data + i * v->stride);
}
extern inline
const unsigned long *
gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ulong.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned long *) (v->data + i * v->stride);
}
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
extern inline
long
gsl_vector_long_get (const gsl_vector_long * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
long *
gsl_vector_long_ptr (gsl_vector_long * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (long *) (v->data + i * v->stride);
}
extern inline
const long *
gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_long.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const long *) (v->data + i * v->stride);
}
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
extern inline
unsigned int
gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned int *
gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned int *) (v->data + i * v->stride);
}
extern inline
const unsigned int *
gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uint.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned int *) (v->data + i * v->stride);
}
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
extern inline
int
gsl_vector_int_get (const gsl_vector_int * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
int *
gsl_vector_int_ptr (gsl_vector_int * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (int *) (v->data + i * v->stride);
}
extern inline
const int *
gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_int.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const int *) (v->data + i * v->stride);
}
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
extern inline
unsigned short
gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned short *
gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned short *) (v->data + i * v->stride);
}
extern inline
const unsigned short *
gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_ushort.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned short *) (v->data + i * v->stride);
}
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
extern inline
short
gsl_vector_short_get (const gsl_vector_short * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
short *
gsl_vector_short_ptr (gsl_vector_short * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (short *) (v->data + i * v->stride);
}
extern inline
const short *
gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_short.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const short *) (v->data + i * v->stride);
}
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
extern inline
unsigned char
gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
unsigned char *
gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (unsigned char *) (v->data + i * v->stride);
}
extern inline
const unsigned char *
gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_uchar.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const unsigned char *) (v->data + i * v->stride);
}
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
extern inline
char
gsl_vector_char_get (const gsl_vector_char * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 175, GSL_EINVAL) ; return 0 ; } while (0);
}
return v->data[i * v->stride];
}
extern inline
void
gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 188, GSL_EINVAL) ; return ; } while (0);
}
v->data[i * v->stride] = x;
}
extern inline
char *
gsl_vector_char_ptr (gsl_vector_char * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 201, GSL_EINVAL) ; return 0 ; } while (0);
}
return (char *) (v->data + i * v->stride);
}
extern inline
const char *
gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i)
{
if (i >= v->size)
{
do { gsl_error ("index out of range", "../gsl/gsl_vector_char.h", 214, GSL_EINVAL) ; return 0 ; } while (0);
}
return (const char *) (v->data + i * v->stride);
}
# 23 "../gsl/gsl_vector.h" 2
# 31 "test.c" 2
# 1 "../gsl/gsl_test.h" 1
# 33 "../gsl/gsl_test.h"
void
gsl_test (int status, const char *test_description, ...);
void
gsl_test_rel (double result, double expected, double relative_error,
const char *test_description, ...) ;
void
gsl_test_abs (double result, double expected, double absolute_error,
const char *test_description, ...) ;
void
gsl_test_factor (double result, double expected, double factor,
const char *test_description, ...) ;
void
gsl_test_int (int result, int expected, const char *test_description, ...) ;
void
gsl_test_str (const char * result, const char * expected,
const char *test_description, ...) ;
void
gsl_test_verbose (int verbose) ;
int
gsl_test_summary (void) ;
# 32 "test.c" 2
# 1 "../gsl/gsl_ieee_utils.h" 1
# 34 "../gsl/gsl_ieee_utils.h"
enum {
GSL_IEEE_TYPE_NAN = 1,
GSL_IEEE_TYPE_INF = 2,
GSL_IEEE_TYPE_NORMAL = 3,
GSL_IEEE_TYPE_DENORMAL = 4,
GSL_IEEE_TYPE_ZERO = 5
} ;
typedef struct {
int sign ;
char mantissa[24] ;
int exponent ;
int type ;
} gsl_ieee_float_rep ;
typedef struct {
int sign ;
char mantissa[53] ;
int exponent ;
int type ;
} gsl_ieee_double_rep ;
void gsl_ieee_printf_float (const float * x) ;
void gsl_ieee_printf_double (const double * x) ;
void gsl_ieee_fprintf_float (FILE * stream, const float * x) ;
void gsl_ieee_fprintf_double (FILE * stream, const double * x) ;
void gsl_ieee_float_to_rep (const float * x, gsl_ieee_float_rep * r) ;
void gsl_ieee_double_to_rep (const double * x, gsl_ieee_double_rep * r) ;
enum {
GSL_IEEE_SINGLE_PRECISION = 1,
GSL_IEEE_DOUBLE_PRECISION = 2,
GSL_IEEE_EXTENDED_PRECISION = 3
} ;
enum {
GSL_IEEE_ROUND_TO_NEAREST = 1,
GSL_IEEE_ROUND_DOWN = 2,
GSL_IEEE_ROUND_UP = 3,
GSL_IEEE_ROUND_TO_ZERO = 4
} ;
enum {
GSL_IEEE_MASK_INVALID = 1,
GSL_IEEE_MASK_DENORMALIZED = 2,
GSL_IEEE_MASK_DIVISION_BY_ZERO = 4,
GSL_IEEE_MASK_OVERFLOW = 8,
GSL_IEEE_MASK_UNDERFLOW = 16,
GSL_IEEE_MASK_ALL = 31,
GSL_IEEE_TRAP_INEXACT = 32
} ;
void gsl_ieee_env_setup (void) ;
int gsl_ieee_read_mode_string (const char * description, int * precision,
int * rounding, int * exception_mask) ;
int gsl_ieee_set_mode (int precision, int rounding, int exception_mask) ;
# 33 "test.c" 2
int status = 0;
# 43 "test.c"
# 1 "../templates_on.h" 1
# 44 "test.c" 2
# 1 "test_complex_source.c" 1
# 20 "test_complex_source.c"
void test_complex_long_double_func (void);
void test_complex_long_double_binary (void);
void test_complex_long_double_trap (void);
void
test_complex_long_double_func (void)
{
size_t i;
gsl_vector_complex_long_double * v = gsl_vector_complex_long_double_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex_long_double" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex_long_double" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex_long_double" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x = {{0.0L,0.0L}};
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1234);
gsl_vector_complex_long_double_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (long double) i || v->data[2 * i + 1] != (long double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x, y;
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1234);
y = gsl_vector_complex_long_double_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_long_double x, y;
((x).dat[0]) = (long double)(2 * i);
((x).dat[1]) = (long double)(2 * i + 1234);
y = gsl_vector_complex_long_double_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_long_double x;
((x).dat[0]) = (long double)i ;
((x).dat[1]) = (long double)(i + 1234);
gsl_vector_complex_long_double_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (long double) i || v->data[2 * 2 * i + 1] != (long double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_long_double" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x = {{0.0L,0.0L}};
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1234);
gsl_vector_complex_long_double_set (v, i, x);
};
{
gsl_complex_long_double x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_long_double_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_long_double_get(v,2);
s = gsl_vector_complex_long_double_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_long_double_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_long_double_get(v,2);
s = gsl_vector_complex_long_double_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex_long_double" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_complex_long_double_reverse (v) ;
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x,r ;
((x).dat[0]) = (long double)(1027 - i - 1) ;
((x).dat[1]) = (long double)(1027 - i - 1 + 1234);
r = gsl_vector_complex_long_double_get (v, i);
status |= !(((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1]));
}
gsl_test (status, "gsl_vector_complex_long_double" "_reverse" " (static)" " reverses elements") ;
gsl_vector_complex_long_double_free (v);
}
void
test_complex_long_double_binary (void)
{
gsl_vector_complex_long_double * v = gsl_vector_complex_long_double_calloc (1027);
gsl_vector_complex_long_double * w = gsl_vector_complex_long_double_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x = {{0.0L,0.0L}};
((x).dat[0]) = (long double)(1027 - i);
((x).dat[1]) = (long double)(1027 - i + 1);
gsl_vector_complex_long_double_set (v, i, x);
};
gsl_vector_complex_long_double_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_complex_long_double_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (long double) (1027 - i) || w->data[2 * i + 1] != (long double) (1027 - i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_long_double_free (v);
gsl_vector_complex_long_double_free (w);
gsl_test (status, "gsl_vector_complex_long_double" "_write and read work");
}
void
test_complex_long_double_trap (void)
{
gsl_vector_complex_long_double * vc = gsl_vector_complex_long_double_alloc (1027);
gsl_complex_long_double z = {{(long double)1.2, (long double)3.4}};
gsl_complex_long_double z1 = {{(long double)4.5, (long double)6.7}};
size_t j = 0;
status = 0;
gsl_vector_complex_long_double_set (vc, j - 1, z);
gsl_test (!status,
"gsl_vector_complex_long_double" "_set traps index below lower bound");
status = 0;
gsl_vector_complex_long_double_set (vc, 1027 + 1, z);
gsl_test (!status,
"gsl_vector_complex_long_double" "_set traps index above upper bound");
status = 0;
gsl_vector_complex_long_double_set (vc, 1027, z);
gsl_test (!status, "gsl_vector_complex_long_double" "_set traps index at upper bound");
status = 0;
z1 = gsl_vector_complex_long_double_get (vc, j - 1);
gsl_test (!status,
"gsl_vector_complex_long_double" "_get traps index below lower bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_long_double" "_get returns zero real below lower bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_long_double" "_get returns zero imag below lower bound");
status = 0;
z1 = gsl_vector_complex_long_double_get (vc, 1027 + 1);
gsl_test (!status,
"gsl_vector_complex_long_double" "_get traps index above upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_long_double" "_get returns zero real above upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_long_double" "_get returns zero imag above upper bound");
status = 0;
z1 = gsl_vector_complex_long_double_get (vc, 1027);
gsl_test (!status, "gsl_vector_complex_long_double" "_get traps index at upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_long_double" "_get returns zero real at upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_long_double" "_get returns zero imag at upper bound");
gsl_vector_complex_long_double_free (vc);
}
# 45 "test.c" 2
# 1 "test_complex_io.c" 1
# 20 "test_complex_io.c"
void test_complex_long_double_text (void);
void
test_complex_long_double_text (void)
{
gsl_vector_complex_long_double * v = gsl_vector_complex_long_double_alloc (1027);
gsl_vector_complex_long_double * w = gsl_vector_complex_long_double_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_complex_long_double x;
((x).dat[0]) = (long double)i;
((x).dat[1]) = (long double)(i + 1);
gsl_vector_complex_long_double_set (v, i, x);
};
gsl_vector_complex_long_double_fprintf (f, v, "%Lg");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_complex_long_double_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (long double) i || w->data[2 * i + 1] != (long double) (i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_long_double_free (v);
gsl_vector_complex_long_double_free (w);
gsl_test (status, "gsl_vector_complex_long_double" "_fprintf and fscanf");
}
# 47 "test.c" 2
# 1 "../templates_off.h" 1
# 49 "test.c" 2
# 1 "../templates_on.h" 1
# 54 "test.c" 2
# 1 "test_complex_source.c" 1
# 20 "test_complex_source.c"
void test_complex_func (void);
void test_complex_binary (void);
void test_complex_trap (void);
void
test_complex_func (void)
{
size_t i;
gsl_vector_complex * v = gsl_vector_complex_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex x = {{0.0,0.0}};
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1234);
gsl_vector_complex_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (double) i || v->data[2 * i + 1] != (double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex x, y;
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1234);
y = gsl_vector_complex_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex x, y;
((x).dat[0]) = (double)(2 * i);
((x).dat[1]) = (double)(2 * i + 1234);
y = gsl_vector_complex_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex x;
((x).dat[0]) = (double)i ;
((x).dat[1]) = (double)(i + 1234);
gsl_vector_complex_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (double) i || v->data[2 * 2 * i + 1] != (double) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex x = {{0.0,0.0}};
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1234);
gsl_vector_complex_set (v, i, x);
};
{
gsl_complex x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_get(v,2);
s = gsl_vector_complex_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_get(v,2);
s = gsl_vector_complex_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_complex_reverse (v) ;
for (i = 0; i < 1027; i++)
{
gsl_complex x,r ;
((x).dat[0]) = (double)(1027 - i - 1) ;
((x).dat[1]) = (double)(1027 - i - 1 + 1234);
r = gsl_vector_complex_get (v, i);
status |= !(((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1]));
}
gsl_test (status, "gsl_vector_complex" "_reverse" " (static)" " reverses elements") ;
gsl_vector_complex_free (v);
}
void
test_complex_binary (void)
{
gsl_vector_complex * v = gsl_vector_complex_calloc (1027);
gsl_vector_complex * w = gsl_vector_complex_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_complex x = {{0.0,0.0}};
((x).dat[0]) = (double)(1027 - i);
((x).dat[1]) = (double)(1027 - i + 1);
gsl_vector_complex_set (v, i, x);
};
gsl_vector_complex_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_complex_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (double) (1027 - i) || w->data[2 * i + 1] != (double) (1027 - i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_free (v);
gsl_vector_complex_free (w);
gsl_test (status, "gsl_vector_complex" "_write and read work");
}
void
test_complex_trap (void)
{
gsl_vector_complex * vc = gsl_vector_complex_alloc (1027);
gsl_complex z = {{(double)1.2, (double)3.4}};
gsl_complex z1 = {{(double)4.5, (double)6.7}};
size_t j = 0;
status = 0;
gsl_vector_complex_set (vc, j - 1, z);
gsl_test (!status,
"gsl_vector_complex" "_set traps index below lower bound");
status = 0;
gsl_vector_complex_set (vc, 1027 + 1, z);
gsl_test (!status,
"gsl_vector_complex" "_set traps index above upper bound");
status = 0;
gsl_vector_complex_set (vc, 1027, z);
gsl_test (!status, "gsl_vector_complex" "_set traps index at upper bound");
status = 0;
z1 = gsl_vector_complex_get (vc, j - 1);
gsl_test (!status,
"gsl_vector_complex" "_get traps index below lower bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex" "_get returns zero real below lower bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex" "_get returns zero imag below lower bound");
status = 0;
z1 = gsl_vector_complex_get (vc, 1027 + 1);
gsl_test (!status,
"gsl_vector_complex" "_get traps index above upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex" "_get returns zero real above upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex" "_get returns zero imag above upper bound");
status = 0;
z1 = gsl_vector_complex_get (vc, 1027);
gsl_test (!status, "gsl_vector_complex" "_get traps index at upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex" "_get returns zero real at upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex" "_get returns zero imag at upper bound");
gsl_vector_complex_free (vc);
}
# 55 "test.c" 2
# 1 "test_complex_io.c" 1
# 20 "test_complex_io.c"
void test_complex_text (void);
void
test_complex_text (void)
{
gsl_vector_complex * v = gsl_vector_complex_alloc (1027);
gsl_vector_complex * w = gsl_vector_complex_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_complex x;
((x).dat[0]) = (double)i;
((x).dat[1]) = (double)(i + 1);
gsl_vector_complex_set (v, i, x);
};
gsl_vector_complex_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_complex_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (double) i || w->data[2 * i + 1] != (double) (i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_free (v);
gsl_vector_complex_free (w);
gsl_test (status, "gsl_vector_complex" "_fprintf and fscanf");
}
# 56 "test.c" 2
# 1 "../templates_off.h" 1
# 57 "test.c" 2
# 1 "../templates_on.h" 1
# 61 "test.c" 2
# 1 "test_complex_source.c" 1
# 20 "test_complex_source.c"
void test_complex_float_func (void);
void test_complex_float_binary (void);
void test_complex_float_trap (void);
void
test_complex_float_func (void)
{
size_t i;
gsl_vector_complex_float * v = gsl_vector_complex_float_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex_float" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex_float" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex_float" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (float) i || v->data[2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)(2 * i);
((x).dat[1]) = (float)(2 * i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x;
((x).dat[0]) = (float)i ;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (float) i || v->data[2 * 2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
{
gsl_complex_float x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex_float" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_complex_float_reverse (v) ;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x,r ;
((x).dat[0]) = (float)(1027 - i - 1) ;
((x).dat[1]) = (float)(1027 - i - 1 + 1234);
r = gsl_vector_complex_float_get (v, i);
status |= !(((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1]));
}
gsl_test (status, "gsl_vector_complex_float" "_reverse" " (static)" " reverses elements") ;
gsl_vector_complex_float_free (v);
}
void
test_complex_float_binary (void)
{
gsl_vector_complex_float * v = gsl_vector_complex_float_calloc (1027);
gsl_vector_complex_float * w = gsl_vector_complex_float_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)(1027 - i);
((x).dat[1]) = (float)(1027 - i + 1);
gsl_vector_complex_float_set (v, i, x);
};
gsl_vector_complex_float_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_complex_float_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (float) (1027 - i) || w->data[2 * i + 1] != (float) (1027 - i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_float_free (v);
gsl_vector_complex_float_free (w);
gsl_test (status, "gsl_vector_complex_float" "_write and read work");
}
void
test_complex_float_trap (void)
{
gsl_vector_complex_float * vc = gsl_vector_complex_float_alloc (1027);
gsl_complex_float z = {{(float)1.2, (float)3.4}};
gsl_complex_float z1 = {{(float)4.5, (float)6.7}};
size_t j = 0;
status = 0;
gsl_vector_complex_float_set (vc, j - 1, z);
gsl_test (!status,
"gsl_vector_complex_float" "_set traps index below lower bound");
status = 0;
gsl_vector_complex_float_set (vc, 1027 + 1, z);
gsl_test (!status,
"gsl_vector_complex_float" "_set traps index above upper bound");
status = 0;
gsl_vector_complex_float_set (vc, 1027, z);
gsl_test (!status, "gsl_vector_complex_float" "_set traps index at upper bound");
status = 0;
z1 = gsl_vector_complex_float_get (vc, j - 1);
gsl_test (!status,
"gsl_vector_complex_float" "_get traps index below lower bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_float" "_get returns zero real below lower bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_float" "_get returns zero imag below lower bound");
status = 0;
z1 = gsl_vector_complex_float_get (vc, 1027 + 1);
gsl_test (!status,
"gsl_vector_complex_float" "_get traps index above upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_float" "_get returns zero real above upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_float" "_get returns zero imag above upper bound");
status = 0;
z1 = gsl_vector_complex_float_get (vc, 1027);
gsl_test (!status, "gsl_vector_complex_float" "_get traps index at upper bound");
gsl_test (((z1).dat[0]) != 0,
"gsl_vector_complex_float" "_get returns zero real at upper bound");
gsl_test (((z1).dat[1]) != 0,
"gsl_vector_complex_float" "_get returns zero imag at upper bound");
gsl_vector_complex_float_free (vc);
}
# 62 "test.c" 2
# 1 "test_complex_io.c" 1
# 20 "test_complex_io.c"
void test_complex_float_text (void);
void
test_complex_float_text (void)
{
gsl_vector_complex_float * v = gsl_vector_complex_float_alloc (1027);
gsl_vector_complex_float * w = gsl_vector_complex_float_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x;
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1);
gsl_vector_complex_float_set (v, i, x);
};
gsl_vector_complex_float_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_complex_float_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[2 * i] != (float) i || w->data[2 * i + 1] != (float) (i + 1))
status = 1;
};
fclose (f);
}
gsl_vector_complex_float_free (v);
gsl_vector_complex_float_free (w);
gsl_test (status, "gsl_vector_complex_float" "_fprintf and fscanf");
}
# 63 "test.c" 2
# 1 "../templates_off.h" 1
# 64 "test.c" 2
# 1 "../templates_on.h" 1
# 68 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_long_double_func (void);
void test_long_double_binary (void);
void test_long_double_trap (void);
void
test_long_double_func (void)
{
gsl_vector_long_double * v;
size_t i;
v = gsl_vector_long_double_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_long_double" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_long_double" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_long_double" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (long double) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long_double" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_long_double_get (v, i) != (long double) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long_double" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_long_double_get (v, i) != (long double) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_long_double_set (v, i, (long double) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (long double) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) i);
}
gsl_vector_long_double_swap_elements (v, 2, 5) ;
status = (gsl_vector_long_double_get(v,2) != 5) ;
status |= (gsl_vector_long_double_get(v,5) != 2) ;
gsl_vector_long_double_swap_elements (v, 2, 5) ;
status |= (gsl_vector_long_double_get(v,2) != 2) ;
status |= (gsl_vector_long_double_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_long_double" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_long_double_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_long_double_get (v, i) != (long double) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_long_double" "_reverse" " (static)" " reverses elements") ;
{
long double exp_max = gsl_vector_long_double_get(v, 0);
long double exp_min = gsl_vector_long_double_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
long double k = gsl_vector_long_double_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_long_double_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
long double k = gsl_vector_long_double_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_long_double_get (v, i) ;
exp_imax = i;
}
}
{
long double max = gsl_vector_long_double_max (v) ;
gsl_test (max != exp_max, "gsl_vector_long_double" "_max returns correct maximum value");
}
{
long double min = gsl_vector_long_double_min (v) ;
gsl_test (min != exp_min, "gsl_vector_long_double" "_min returns correct minimum value");
}
{
long double min, max;
gsl_vector_long_double_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_long_double" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_long_double" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_long_double_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_long_double" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_long_double_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_long_double" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_long_double_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_long_double" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_long_double" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_long_double * a = gsl_vector_long_double_calloc (1027);
gsl_vector_long_double * b = gsl_vector_long_double_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (a, i, (long double)(3 + i));
gsl_vector_long_double_set (b, i, (long double)(3 + 2 * i));
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_add vector addition");
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_sub vector subtraction");
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_mul multiplication");
}
gsl_vector_long_double_memcpy (v, a);
gsl_vector_long_double_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long double r = gsl_vector_long_double_get (v,i);
long double x = gsl_vector_long_double_get (a,i);
long double y = gsl_vector_long_double_get (b,i);
long double z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_long_double" "_div division");
}
gsl_vector_long_double_free (a);
gsl_vector_long_double_free (b);
}
gsl_vector_long_double_free (v);
}
void
test_long_double_binary (void)
{
gsl_vector_long_double * v = gsl_vector_long_double_calloc (1027);
gsl_vector_long_double * w = gsl_vector_long_double_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) (1027 - i));
};
gsl_vector_long_double_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_long_double_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long double) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_write and read");
fclose (f);
}
gsl_vector_long_double_free (v);
gsl_vector_long_double_free (w);
}
void
test_long_double_trap (void)
{
gsl_vector_long_double * v = gsl_vector_long_double_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_long_double_set (v, j - 1, (long double)0);
gsl_test (!status, "gsl_vector_long_double" "_set traps index below lower bound");
status = 0;
gsl_vector_long_double_set (v, 1027 + 1, (long double)0);
gsl_test (!status, "gsl_vector_long_double" "_set traps index above upper bound");
status = 0;
gsl_vector_long_double_set (v, 1027, (long double)0);
gsl_test (!status, "gsl_vector_long_double" "_set traps index at upper bound");
status = 0;
x = gsl_vector_long_double_get (v, j - 1);
gsl_test (!status, "gsl_vector_long_double" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_long_double" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_long_double_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_long_double" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_long_double" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_long_double_get (v, 1027);
gsl_test (!status, "gsl_vector_long_double" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_long_double" "_get returns zero for index at upper bound");
gsl_vector_long_double_free (v);
}
# 69 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_long_double_text (void);
void
test_long_double_text (void)
{
gsl_vector_long_double * v = gsl_vector_long_double_alloc (1027);
gsl_vector_long_double * w = gsl_vector_long_double_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_double_set (v, i, (long double) i);
};
gsl_vector_long_double_fprintf (f, v, "%Lg");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_long_double_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long double) i)
status = 1;
};
gsl_test (status, "gsl_vector_long_double" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_long_double_free (v);
gsl_vector_long_double_free (w);
}
# 71 "test.c" 2
# 1 "../templates_off.h" 1
# 73 "test.c" 2
# 1 "../templates_on.h" 1
# 77 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_func (void);
void test_binary (void);
void test_trap (void);
void
test_func (void)
{
gsl_vector * v;
size_t i;
v = gsl_vector_calloc (1027);
gsl_test (v->data == 0, "gsl_vector" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (double) i)
status = 1;
};
gsl_test (status,
"gsl_vector" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_get (v, i) != (double) i)
status = 1;
};
gsl_test (status,
"gsl_vector" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_get (v, i) != (double) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_set (v, i, (double) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (double) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) i);
}
gsl_vector_swap_elements (v, 2, 5) ;
status = (gsl_vector_get(v,2) != 5) ;
status |= (gsl_vector_get(v,5) != 2) ;
gsl_vector_swap_elements (v, 2, 5) ;
status |= (gsl_vector_get(v,2) != 2) ;
status |= (gsl_vector_get(v,5) != 5) ;
gsl_test (status, "gsl_vector" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_get (v, i) != (double) (1027 - i - 1));
}
gsl_test (status, "gsl_vector" "_reverse" " (static)" " reverses elements") ;
{
double exp_max = gsl_vector_get(v, 0);
double exp_min = gsl_vector_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
double k = gsl_vector_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
double k = gsl_vector_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_get (v, i) ;
exp_imax = i;
}
}
{
double max = gsl_vector_max (v) ;
gsl_test (max != exp_max, "gsl_vector" "_max returns correct maximum value");
}
{
double min = gsl_vector_min (v) ;
gsl_test (min != exp_min, "gsl_vector" "_min returns correct minimum value");
}
{
double min, max;
gsl_vector_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector * a = gsl_vector_calloc (1027);
gsl_vector * b = gsl_vector_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_set (a, i, (double)(3 + i));
gsl_vector_set (b, i, (double)(3 + 2 * i));
}
gsl_vector_memcpy (v, a);
gsl_vector_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector" "_add vector addition");
}
gsl_vector_memcpy (v, a);
gsl_vector_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector" "_sub vector subtraction");
}
gsl_vector_memcpy (v, a);
gsl_vector_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector" "_mul multiplication");
}
gsl_vector_memcpy (v, a);
gsl_vector_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
double r = gsl_vector_get (v,i);
double x = gsl_vector_get (a,i);
double y = gsl_vector_get (b,i);
double z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector" "_div division");
}
gsl_vector_free (a);
gsl_vector_free (b);
}
gsl_vector_free (v);
}
void
test_binary (void)
{
gsl_vector * v = gsl_vector_calloc (1027);
gsl_vector * w = gsl_vector_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) (1027 - i));
};
gsl_vector_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (double) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector" "_write and read");
fclose (f);
}
gsl_vector_free (v);
gsl_vector_free (w);
}
void
test_trap (void)
{
gsl_vector * v = gsl_vector_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_set (v, j - 1, (double)0);
gsl_test (!status, "gsl_vector" "_set traps index below lower bound");
status = 0;
gsl_vector_set (v, 1027 + 1, (double)0);
gsl_test (!status, "gsl_vector" "_set traps index above upper bound");
status = 0;
gsl_vector_set (v, 1027, (double)0);
gsl_test (!status, "gsl_vector" "_set traps index at upper bound");
status = 0;
x = gsl_vector_get (v, j - 1);
gsl_test (!status, "gsl_vector" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_get (v, 1027);
gsl_test (!status, "gsl_vector" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector" "_get returns zero for index at upper bound");
gsl_vector_free (v);
}
# 78 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_text (void);
void
test_text (void)
{
gsl_vector * v = gsl_vector_alloc (1027);
gsl_vector * w = gsl_vector_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_set (v, i, (double) i);
};
gsl_vector_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (double) i)
status = 1;
};
gsl_test (status, "gsl_vector" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_free (v);
gsl_vector_free (w);
}
# 79 "test.c" 2
# 1 "../templates_off.h" 1
# 80 "test.c" 2
# 1 "../templates_on.h" 1
# 84 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_float_func (void);
void test_float_binary (void);
void test_float_trap (void);
void
test_float_func (void)
{
gsl_vector_float * v;
size_t i;
v = gsl_vector_float_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_float" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_float" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_float" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (float) i)
status = 1;
};
gsl_test (status,
"gsl_vector_float" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_float_get (v, i) != (float) i)
status = 1;
};
gsl_test (status,
"gsl_vector_float" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_float_get (v, i) != (float) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_float" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_float_set (v, i, (float) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (float) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_float" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) i);
}
gsl_vector_float_swap_elements (v, 2, 5) ;
status = (gsl_vector_float_get(v,2) != 5) ;
status |= (gsl_vector_float_get(v,5) != 2) ;
gsl_vector_float_swap_elements (v, 2, 5) ;
status |= (gsl_vector_float_get(v,2) != 2) ;
status |= (gsl_vector_float_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_float" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_float_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_float_get (v, i) != (float) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_float" "_reverse" " (static)" " reverses elements") ;
{
float exp_max = gsl_vector_float_get(v, 0);
float exp_min = gsl_vector_float_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
float k = gsl_vector_float_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_float_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
float k = gsl_vector_float_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_float_get (v, i) ;
exp_imax = i;
}
}
{
float max = gsl_vector_float_max (v) ;
gsl_test (max != exp_max, "gsl_vector_float" "_max returns correct maximum value");
}
{
float min = gsl_vector_float_min (v) ;
gsl_test (min != exp_min, "gsl_vector_float" "_min returns correct minimum value");
}
{
float min, max;
gsl_vector_float_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_float" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_float" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_float_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_float" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_float_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_float" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_float_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_float" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_float" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_float * a = gsl_vector_float_calloc (1027);
gsl_vector_float * b = gsl_vector_float_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (a, i, (float)(3 + i));
gsl_vector_float_set (b, i, (float)(3 + 2 * i));
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_float" "_add vector addition");
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_float" "_sub vector subtraction");
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_float" "_mul multiplication");
}
gsl_vector_float_memcpy (v, a);
gsl_vector_float_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
float r = gsl_vector_float_get (v,i);
float x = gsl_vector_float_get (a,i);
float y = gsl_vector_float_get (b,i);
float z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_float" "_div division");
}
gsl_vector_float_free (a);
gsl_vector_float_free (b);
}
gsl_vector_float_free (v);
}
void
test_float_binary (void)
{
gsl_vector_float * v = gsl_vector_float_calloc (1027);
gsl_vector_float * w = gsl_vector_float_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) (1027 - i));
};
gsl_vector_float_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_float_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (float) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_float" "_write and read");
fclose (f);
}
gsl_vector_float_free (v);
gsl_vector_float_free (w);
}
void
test_float_trap (void)
{
gsl_vector_float * v = gsl_vector_float_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_float_set (v, j - 1, (float)0);
gsl_test (!status, "gsl_vector_float" "_set traps index below lower bound");
status = 0;
gsl_vector_float_set (v, 1027 + 1, (float)0);
gsl_test (!status, "gsl_vector_float" "_set traps index above upper bound");
status = 0;
gsl_vector_float_set (v, 1027, (float)0);
gsl_test (!status, "gsl_vector_float" "_set traps index at upper bound");
status = 0;
x = gsl_vector_float_get (v, j - 1);
gsl_test (!status, "gsl_vector_float" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_float" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_float_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_float" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_float" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_float_get (v, 1027);
gsl_test (!status, "gsl_vector_float" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_float" "_get returns zero for index at upper bound");
gsl_vector_float_free (v);
}
# 85 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_float_text (void);
void
test_float_text (void)
{
gsl_vector_float * v = gsl_vector_float_alloc (1027);
gsl_vector_float * w = gsl_vector_float_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_float_set (v, i, (float) i);
};
gsl_vector_float_fprintf (f, v, "%g");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_float_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (float) i)
status = 1;
};
gsl_test (status, "gsl_vector_float" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_float_free (v);
gsl_vector_float_free (w);
}
# 86 "test.c" 2
# 1 "../templates_off.h" 1
# 87 "test.c" 2
# 1 "../templates_on.h" 1
# 91 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_ulong_func (void);
void test_ulong_binary (void);
void test_ulong_trap (void);
void
test_ulong_func (void)
{
gsl_vector_ulong * v;
size_t i;
v = gsl_vector_ulong_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_ulong" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_ulong" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_ulong" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ulong" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_ulong_get (v, i) != (unsigned long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ulong" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_ulong_get (v, i) != (unsigned long) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned long) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) i);
}
gsl_vector_ulong_swap_elements (v, 2, 5) ;
status = (gsl_vector_ulong_get(v,2) != 5) ;
status |= (gsl_vector_ulong_get(v,5) != 2) ;
gsl_vector_ulong_swap_elements (v, 2, 5) ;
status |= (gsl_vector_ulong_get(v,2) != 2) ;
status |= (gsl_vector_ulong_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_ulong" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_ulong_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_ulong_get (v, i) != (unsigned long) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_ulong" "_reverse" " (static)" " reverses elements") ;
{
unsigned long exp_max = gsl_vector_ulong_get(v, 0);
unsigned long exp_min = gsl_vector_ulong_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned long k = gsl_vector_ulong_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_ulong_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned long k = gsl_vector_ulong_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_ulong_get (v, i) ;
exp_imax = i;
}
}
{
unsigned long max = gsl_vector_ulong_max (v) ;
gsl_test (max != exp_max, "gsl_vector_ulong" "_max returns correct maximum value");
}
{
unsigned long min = gsl_vector_ulong_min (v) ;
gsl_test (min != exp_min, "gsl_vector_ulong" "_min returns correct minimum value");
}
{
unsigned long min, max;
gsl_vector_ulong_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_ulong" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_ulong" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_ulong_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_ulong" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_ulong_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_ulong" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_ulong_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_ulong" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_ulong" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_ulong * a = gsl_vector_ulong_calloc (1027);
gsl_vector_ulong * b = gsl_vector_ulong_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (a, i, (unsigned long)(3 + i));
gsl_vector_ulong_set (b, i, (unsigned long)(3 + 2 * i));
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_add vector addition");
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_sub vector subtraction");
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_mul multiplication");
}
gsl_vector_ulong_memcpy (v, a);
gsl_vector_ulong_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned long r = gsl_vector_ulong_get (v,i);
unsigned long x = gsl_vector_ulong_get (a,i);
unsigned long y = gsl_vector_ulong_get (b,i);
unsigned long z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_ulong" "_div division");
}
gsl_vector_ulong_free (a);
gsl_vector_ulong_free (b);
}
gsl_vector_ulong_free (v);
}
void
test_ulong_binary (void)
{
gsl_vector_ulong * v = gsl_vector_ulong_calloc (1027);
gsl_vector_ulong * w = gsl_vector_ulong_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) (1027 - i));
};
gsl_vector_ulong_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_ulong_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned long) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_write and read");
fclose (f);
}
gsl_vector_ulong_free (v);
gsl_vector_ulong_free (w);
}
void
test_ulong_trap (void)
{
gsl_vector_ulong * v = gsl_vector_ulong_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_ulong_set (v, j - 1, (unsigned long)0);
gsl_test (!status, "gsl_vector_ulong" "_set traps index below lower bound");
status = 0;
gsl_vector_ulong_set (v, 1027 + 1, (unsigned long)0);
gsl_test (!status, "gsl_vector_ulong" "_set traps index above upper bound");
status = 0;
gsl_vector_ulong_set (v, 1027, (unsigned long)0);
gsl_test (!status, "gsl_vector_ulong" "_set traps index at upper bound");
status = 0;
x = gsl_vector_ulong_get (v, j - 1);
gsl_test (!status, "gsl_vector_ulong" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_ulong" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_ulong_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_ulong" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_ulong" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_ulong_get (v, 1027);
gsl_test (!status, "gsl_vector_ulong" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_ulong" "_get returns zero for index at upper bound");
gsl_vector_ulong_free (v);
}
# 92 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_ulong_text (void);
void
test_ulong_text (void)
{
gsl_vector_ulong * v = gsl_vector_ulong_alloc (1027);
gsl_vector_ulong * w = gsl_vector_ulong_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_ulong_set (v, i, (unsigned long) i);
};
gsl_vector_ulong_fprintf (f, v, "%lu");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_ulong_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned long) i)
status = 1;
};
gsl_test (status, "gsl_vector_ulong" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_ulong_free (v);
gsl_vector_ulong_free (w);
}
# 93 "test.c" 2
# 1 "../templates_off.h" 1
# 94 "test.c" 2
# 1 "../templates_on.h" 1
# 98 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_long_func (void);
void test_long_binary (void);
void test_long_trap (void);
void
test_long_func (void)
{
gsl_vector_long * v;
size_t i;
v = gsl_vector_long_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_long" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_long" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_long" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_long_get (v, i) != (long) i)
status = 1;
};
gsl_test (status,
"gsl_vector_long" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_long_get (v, i) != (long) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_long" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_long_set (v, i, (long) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (long) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_long" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) i);
}
gsl_vector_long_swap_elements (v, 2, 5) ;
status = (gsl_vector_long_get(v,2) != 5) ;
status |= (gsl_vector_long_get(v,5) != 2) ;
gsl_vector_long_swap_elements (v, 2, 5) ;
status |= (gsl_vector_long_get(v,2) != 2) ;
status |= (gsl_vector_long_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_long" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_long_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_long_get (v, i) != (long) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_long" "_reverse" " (static)" " reverses elements") ;
{
long exp_max = gsl_vector_long_get(v, 0);
long exp_min = gsl_vector_long_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
long k = gsl_vector_long_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_long_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
long k = gsl_vector_long_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_long_get (v, i) ;
exp_imax = i;
}
}
{
long max = gsl_vector_long_max (v) ;
gsl_test (max != exp_max, "gsl_vector_long" "_max returns correct maximum value");
}
{
long min = gsl_vector_long_min (v) ;
gsl_test (min != exp_min, "gsl_vector_long" "_min returns correct minimum value");
}
{
long min, max;
gsl_vector_long_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_long" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_long" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_long_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_long" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_long_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_long" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_long_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_long" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_long" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_long * a = gsl_vector_long_calloc (1027);
gsl_vector_long * b = gsl_vector_long_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (a, i, (long)(3 + i));
gsl_vector_long_set (b, i, (long)(3 + 2 * i));
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long" "_add vector addition");
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long" "_sub vector subtraction");
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_long" "_mul multiplication");
}
gsl_vector_long_memcpy (v, a);
gsl_vector_long_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
long r = gsl_vector_long_get (v,i);
long x = gsl_vector_long_get (a,i);
long y = gsl_vector_long_get (b,i);
long z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_long" "_div division");
}
gsl_vector_long_free (a);
gsl_vector_long_free (b);
}
gsl_vector_long_free (v);
}
void
test_long_binary (void)
{
gsl_vector_long * v = gsl_vector_long_calloc (1027);
gsl_vector_long * w = gsl_vector_long_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) (1027 - i));
};
gsl_vector_long_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_long_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_long" "_write and read");
fclose (f);
}
gsl_vector_long_free (v);
gsl_vector_long_free (w);
}
void
test_long_trap (void)
{
gsl_vector_long * v = gsl_vector_long_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_long_set (v, j - 1, (long)0);
gsl_test (!status, "gsl_vector_long" "_set traps index below lower bound");
status = 0;
gsl_vector_long_set (v, 1027 + 1, (long)0);
gsl_test (!status, "gsl_vector_long" "_set traps index above upper bound");
status = 0;
gsl_vector_long_set (v, 1027, (long)0);
gsl_test (!status, "gsl_vector_long" "_set traps index at upper bound");
status = 0;
x = gsl_vector_long_get (v, j - 1);
gsl_test (!status, "gsl_vector_long" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_long" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_long_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_long" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_long" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_long_get (v, 1027);
gsl_test (!status, "gsl_vector_long" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_long" "_get returns zero for index at upper bound");
gsl_vector_long_free (v);
}
# 99 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_long_text (void);
void
test_long_text (void)
{
gsl_vector_long * v = gsl_vector_long_alloc (1027);
gsl_vector_long * w = gsl_vector_long_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_long_set (v, i, (long) i);
};
gsl_vector_long_fprintf (f, v, "%ld");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_long_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (long) i)
status = 1;
};
gsl_test (status, "gsl_vector_long" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_long_free (v);
gsl_vector_long_free (w);
}
# 100 "test.c" 2
# 1 "../templates_off.h" 1
# 101 "test.c" 2
# 1 "../templates_on.h" 1
# 105 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_uint_func (void);
void test_uint_binary (void);
void test_uint_trap (void);
void
test_uint_func (void)
{
gsl_vector_uint * v;
size_t i;
v = gsl_vector_uint_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_uint" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_uint" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_uint" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uint" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_uint_get (v, i) != (unsigned int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uint" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_uint_get (v, i) != (unsigned int) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned int) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) i);
}
gsl_vector_uint_swap_elements (v, 2, 5) ;
status = (gsl_vector_uint_get(v,2) != 5) ;
status |= (gsl_vector_uint_get(v,5) != 2) ;
gsl_vector_uint_swap_elements (v, 2, 5) ;
status |= (gsl_vector_uint_get(v,2) != 2) ;
status |= (gsl_vector_uint_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_uint" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_uint_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_uint_get (v, i) != (unsigned int) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_uint" "_reverse" " (static)" " reverses elements") ;
{
unsigned int exp_max = gsl_vector_uint_get(v, 0);
unsigned int exp_min = gsl_vector_uint_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned int k = gsl_vector_uint_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_uint_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned int k = gsl_vector_uint_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_uint_get (v, i) ;
exp_imax = i;
}
}
{
unsigned int max = gsl_vector_uint_max (v) ;
gsl_test (max != exp_max, "gsl_vector_uint" "_max returns correct maximum value");
}
{
unsigned int min = gsl_vector_uint_min (v) ;
gsl_test (min != exp_min, "gsl_vector_uint" "_min returns correct minimum value");
}
{
unsigned int min, max;
gsl_vector_uint_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_uint" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_uint" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_uint_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_uint" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_uint_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_uint" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_uint_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_uint" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_uint" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_uint * a = gsl_vector_uint_calloc (1027);
gsl_vector_uint * b = gsl_vector_uint_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (a, i, (unsigned int)(3 + i));
gsl_vector_uint_set (b, i, (unsigned int)(3 + 2 * i));
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_add vector addition");
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_sub vector subtraction");
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_mul multiplication");
}
gsl_vector_uint_memcpy (v, a);
gsl_vector_uint_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned int r = gsl_vector_uint_get (v,i);
unsigned int x = gsl_vector_uint_get (a,i);
unsigned int y = gsl_vector_uint_get (b,i);
unsigned int z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_uint" "_div division");
}
gsl_vector_uint_free (a);
gsl_vector_uint_free (b);
}
gsl_vector_uint_free (v);
}
void
test_uint_binary (void)
{
gsl_vector_uint * v = gsl_vector_uint_calloc (1027);
gsl_vector_uint * w = gsl_vector_uint_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) (1027 - i));
};
gsl_vector_uint_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_uint_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned int) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_write and read");
fclose (f);
}
gsl_vector_uint_free (v);
gsl_vector_uint_free (w);
}
void
test_uint_trap (void)
{
gsl_vector_uint * v = gsl_vector_uint_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_uint_set (v, j - 1, (unsigned int)0);
gsl_test (!status, "gsl_vector_uint" "_set traps index below lower bound");
status = 0;
gsl_vector_uint_set (v, 1027 + 1, (unsigned int)0);
gsl_test (!status, "gsl_vector_uint" "_set traps index above upper bound");
status = 0;
gsl_vector_uint_set (v, 1027, (unsigned int)0);
gsl_test (!status, "gsl_vector_uint" "_set traps index at upper bound");
status = 0;
x = gsl_vector_uint_get (v, j - 1);
gsl_test (!status, "gsl_vector_uint" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_uint" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_uint_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_uint" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_uint" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_uint_get (v, 1027);
gsl_test (!status, "gsl_vector_uint" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_uint" "_get returns zero for index at upper bound");
gsl_vector_uint_free (v);
}
# 106 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_uint_text (void);
void
test_uint_text (void)
{
gsl_vector_uint * v = gsl_vector_uint_alloc (1027);
gsl_vector_uint * w = gsl_vector_uint_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_uint_set (v, i, (unsigned int) i);
};
gsl_vector_uint_fprintf (f, v, "%u");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_uint_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned int) i)
status = 1;
};
gsl_test (status, "gsl_vector_uint" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_uint_free (v);
gsl_vector_uint_free (w);
}
# 107 "test.c" 2
# 1 "../templates_off.h" 1
# 108 "test.c" 2
# 1 "../templates_on.h" 1
# 112 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_int_func (void);
void test_int_binary (void);
void test_int_trap (void);
void
test_int_func (void)
{
gsl_vector_int * v;
size_t i;
v = gsl_vector_int_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_int" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_int" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_int" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_int" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_int_get (v, i) != (int) i)
status = 1;
};
gsl_test (status,
"gsl_vector_int" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_int_get (v, i) != (int) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_int" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_int_set (v, i, (int) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (int) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_int" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) i);
}
gsl_vector_int_swap_elements (v, 2, 5) ;
status = (gsl_vector_int_get(v,2) != 5) ;
status |= (gsl_vector_int_get(v,5) != 2) ;
gsl_vector_int_swap_elements (v, 2, 5) ;
status |= (gsl_vector_int_get(v,2) != 2) ;
status |= (gsl_vector_int_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_int" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_int_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_int_get (v, i) != (int) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_int" "_reverse" " (static)" " reverses elements") ;
{
int exp_max = gsl_vector_int_get(v, 0);
int exp_min = gsl_vector_int_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
int k = gsl_vector_int_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_int_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
int k = gsl_vector_int_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_int_get (v, i) ;
exp_imax = i;
}
}
{
int max = gsl_vector_int_max (v) ;
gsl_test (max != exp_max, "gsl_vector_int" "_max returns correct maximum value");
}
{
int min = gsl_vector_int_min (v) ;
gsl_test (min != exp_min, "gsl_vector_int" "_min returns correct minimum value");
}
{
int min, max;
gsl_vector_int_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_int" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_int" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_int_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_int" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_int_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_int" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_int_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_int" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_int" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_int * a = gsl_vector_int_calloc (1027);
gsl_vector_int * b = gsl_vector_int_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (a, i, (int)(3 + i));
gsl_vector_int_set (b, i, (int)(3 + 2 * i));
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_int" "_add vector addition");
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_int" "_sub vector subtraction");
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_int" "_mul multiplication");
}
gsl_vector_int_memcpy (v, a);
gsl_vector_int_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
int r = gsl_vector_int_get (v,i);
int x = gsl_vector_int_get (a,i);
int y = gsl_vector_int_get (b,i);
int z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_int" "_div division");
}
gsl_vector_int_free (a);
gsl_vector_int_free (b);
}
gsl_vector_int_free (v);
}
void
test_int_binary (void)
{
gsl_vector_int * v = gsl_vector_int_calloc (1027);
gsl_vector_int * w = gsl_vector_int_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) (1027 - i));
};
gsl_vector_int_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_int_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (int) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_int" "_write and read");
fclose (f);
}
gsl_vector_int_free (v);
gsl_vector_int_free (w);
}
void
test_int_trap (void)
{
gsl_vector_int * v = gsl_vector_int_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_int_set (v, j - 1, (int)0);
gsl_test (!status, "gsl_vector_int" "_set traps index below lower bound");
status = 0;
gsl_vector_int_set (v, 1027 + 1, (int)0);
gsl_test (!status, "gsl_vector_int" "_set traps index above upper bound");
status = 0;
gsl_vector_int_set (v, 1027, (int)0);
gsl_test (!status, "gsl_vector_int" "_set traps index at upper bound");
status = 0;
x = gsl_vector_int_get (v, j - 1);
gsl_test (!status, "gsl_vector_int" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_int" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_int_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_int" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_int" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_int_get (v, 1027);
gsl_test (!status, "gsl_vector_int" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_int" "_get returns zero for index at upper bound");
gsl_vector_int_free (v);
}
# 113 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_int_text (void);
void
test_int_text (void)
{
gsl_vector_int * v = gsl_vector_int_alloc (1027);
gsl_vector_int * w = gsl_vector_int_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_int_set (v, i, (int) i);
};
gsl_vector_int_fprintf (f, v, "%d");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_int_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (int) i)
status = 1;
};
gsl_test (status, "gsl_vector_int" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_int_free (v);
gsl_vector_int_free (w);
}
# 114 "test.c" 2
# 1 "../templates_off.h" 1
# 115 "test.c" 2
# 1 "../templates_on.h" 1
# 119 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_ushort_func (void);
void test_ushort_binary (void);
void test_ushort_trap (void);
void
test_ushort_func (void)
{
gsl_vector_ushort * v;
size_t i;
v = gsl_vector_ushort_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_ushort" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_ushort" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_ushort" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ushort" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_ushort_get (v, i) != (unsigned short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_ushort" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_ushort_get (v, i) != (unsigned short) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned short) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) i);
}
gsl_vector_ushort_swap_elements (v, 2, 5) ;
status = (gsl_vector_ushort_get(v,2) != 5) ;
status |= (gsl_vector_ushort_get(v,5) != 2) ;
gsl_vector_ushort_swap_elements (v, 2, 5) ;
status |= (gsl_vector_ushort_get(v,2) != 2) ;
status |= (gsl_vector_ushort_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_ushort" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_ushort_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_ushort_get (v, i) != (unsigned short) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_ushort" "_reverse" " (static)" " reverses elements") ;
{
unsigned short exp_max = gsl_vector_ushort_get(v, 0);
unsigned short exp_min = gsl_vector_ushort_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned short k = gsl_vector_ushort_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_ushort_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned short k = gsl_vector_ushort_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_ushort_get (v, i) ;
exp_imax = i;
}
}
{
unsigned short max = gsl_vector_ushort_max (v) ;
gsl_test (max != exp_max, "gsl_vector_ushort" "_max returns correct maximum value");
}
{
unsigned short min = gsl_vector_ushort_min (v) ;
gsl_test (min != exp_min, "gsl_vector_ushort" "_min returns correct minimum value");
}
{
unsigned short min, max;
gsl_vector_ushort_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_ushort" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_ushort" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_ushort_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_ushort" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_ushort_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_ushort" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_ushort_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_ushort" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_ushort" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_ushort * a = gsl_vector_ushort_calloc (1027);
gsl_vector_ushort * b = gsl_vector_ushort_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (a, i, (unsigned short)(3 + i));
gsl_vector_ushort_set (b, i, (unsigned short)(3 + 2 * i));
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_add vector addition");
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_sub vector subtraction");
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_mul multiplication");
}
gsl_vector_ushort_memcpy (v, a);
gsl_vector_ushort_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned short r = gsl_vector_ushort_get (v,i);
unsigned short x = gsl_vector_ushort_get (a,i);
unsigned short y = gsl_vector_ushort_get (b,i);
unsigned short z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_ushort" "_div division");
}
gsl_vector_ushort_free (a);
gsl_vector_ushort_free (b);
}
gsl_vector_ushort_free (v);
}
void
test_ushort_binary (void)
{
gsl_vector_ushort * v = gsl_vector_ushort_calloc (1027);
gsl_vector_ushort * w = gsl_vector_ushort_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) (1027 - i));
};
gsl_vector_ushort_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_ushort_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned short) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_write and read");
fclose (f);
}
gsl_vector_ushort_free (v);
gsl_vector_ushort_free (w);
}
void
test_ushort_trap (void)
{
gsl_vector_ushort * v = gsl_vector_ushort_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_ushort_set (v, j - 1, (unsigned short)0);
gsl_test (!status, "gsl_vector_ushort" "_set traps index below lower bound");
status = 0;
gsl_vector_ushort_set (v, 1027 + 1, (unsigned short)0);
gsl_test (!status, "gsl_vector_ushort" "_set traps index above upper bound");
status = 0;
gsl_vector_ushort_set (v, 1027, (unsigned short)0);
gsl_test (!status, "gsl_vector_ushort" "_set traps index at upper bound");
status = 0;
x = gsl_vector_ushort_get (v, j - 1);
gsl_test (!status, "gsl_vector_ushort" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_ushort" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_ushort_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_ushort" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_ushort" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_ushort_get (v, 1027);
gsl_test (!status, "gsl_vector_ushort" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_ushort" "_get returns zero for index at upper bound");
gsl_vector_ushort_free (v);
}
# 120 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_ushort_text (void);
void
test_ushort_text (void)
{
gsl_vector_ushort * v = gsl_vector_ushort_alloc (1027);
gsl_vector_ushort * w = gsl_vector_ushort_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_ushort_set (v, i, (unsigned short) i);
};
gsl_vector_ushort_fprintf (f, v, "%hu");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_ushort_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned short) i)
status = 1;
};
gsl_test (status, "gsl_vector_ushort" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_ushort_free (v);
gsl_vector_ushort_free (w);
}
# 121 "test.c" 2
# 1 "../templates_off.h" 1
# 122 "test.c" 2
# 1 "../templates_on.h" 1
# 126 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_short_func (void);
void test_short_binary (void);
void test_short_trap (void);
void
test_short_func (void)
{
gsl_vector_short * v;
size_t i;
v = gsl_vector_short_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_short" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_short" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_short" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_short" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_short_get (v, i) != (short) i)
status = 1;
};
gsl_test (status,
"gsl_vector_short" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_short_get (v, i) != (short) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_short" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_short_set (v, i, (short) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (short) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_short" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) i);
}
gsl_vector_short_swap_elements (v, 2, 5) ;
status = (gsl_vector_short_get(v,2) != 5) ;
status |= (gsl_vector_short_get(v,5) != 2) ;
gsl_vector_short_swap_elements (v, 2, 5) ;
status |= (gsl_vector_short_get(v,2) != 2) ;
status |= (gsl_vector_short_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_short" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_short_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_short_get (v, i) != (short) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_short" "_reverse" " (static)" " reverses elements") ;
{
short exp_max = gsl_vector_short_get(v, 0);
short exp_min = gsl_vector_short_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
short k = gsl_vector_short_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_short_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
short k = gsl_vector_short_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_short_get (v, i) ;
exp_imax = i;
}
}
{
short max = gsl_vector_short_max (v) ;
gsl_test (max != exp_max, "gsl_vector_short" "_max returns correct maximum value");
}
{
short min = gsl_vector_short_min (v) ;
gsl_test (min != exp_min, "gsl_vector_short" "_min returns correct minimum value");
}
{
short min, max;
gsl_vector_short_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_short" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_short" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_short_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_short" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_short_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_short" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_short_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_short" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_short" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_short * a = gsl_vector_short_calloc (1027);
gsl_vector_short * b = gsl_vector_short_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (a, i, (short)(3 + i));
gsl_vector_short_set (b, i, (short)(3 + 2 * i));
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_short" "_add vector addition");
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_short" "_sub vector subtraction");
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_short" "_mul multiplication");
}
gsl_vector_short_memcpy (v, a);
gsl_vector_short_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
short r = gsl_vector_short_get (v,i);
short x = gsl_vector_short_get (a,i);
short y = gsl_vector_short_get (b,i);
short z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_short" "_div division");
}
gsl_vector_short_free (a);
gsl_vector_short_free (b);
}
gsl_vector_short_free (v);
}
void
test_short_binary (void)
{
gsl_vector_short * v = gsl_vector_short_calloc (1027);
gsl_vector_short * w = gsl_vector_short_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) (1027 - i));
};
gsl_vector_short_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_short_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (short) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_short" "_write and read");
fclose (f);
}
gsl_vector_short_free (v);
gsl_vector_short_free (w);
}
void
test_short_trap (void)
{
gsl_vector_short * v = gsl_vector_short_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_short_set (v, j - 1, (short)0);
gsl_test (!status, "gsl_vector_short" "_set traps index below lower bound");
status = 0;
gsl_vector_short_set (v, 1027 + 1, (short)0);
gsl_test (!status, "gsl_vector_short" "_set traps index above upper bound");
status = 0;
gsl_vector_short_set (v, 1027, (short)0);
gsl_test (!status, "gsl_vector_short" "_set traps index at upper bound");
status = 0;
x = gsl_vector_short_get (v, j - 1);
gsl_test (!status, "gsl_vector_short" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_short" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_short_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_short" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_short" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_short_get (v, 1027);
gsl_test (!status, "gsl_vector_short" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_short" "_get returns zero for index at upper bound");
gsl_vector_short_free (v);
}
# 127 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_short_text (void);
void
test_short_text (void)
{
gsl_vector_short * v = gsl_vector_short_alloc (1027);
gsl_vector_short * w = gsl_vector_short_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_short_set (v, i, (short) i);
};
gsl_vector_short_fprintf (f, v, "%hd");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_short_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (short) i)
status = 1;
};
gsl_test (status, "gsl_vector_short" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_short_free (v);
gsl_vector_short_free (w);
}
# 128 "test.c" 2
# 1 "../templates_off.h" 1
# 129 "test.c" 2
# 1 "../templates_on.h" 1
# 133 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_uchar_func (void);
void test_uchar_binary (void);
void test_uchar_trap (void);
void
test_uchar_func (void)
{
gsl_vector_uchar * v;
size_t i;
v = gsl_vector_uchar_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_uchar" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_uchar" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_uchar" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (unsigned char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uchar" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_uchar_get (v, i) != (unsigned char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_uchar" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_uchar_get (v, i) != (unsigned char) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (unsigned char) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) i);
}
gsl_vector_uchar_swap_elements (v, 2, 5) ;
status = (gsl_vector_uchar_get(v,2) != 5) ;
status |= (gsl_vector_uchar_get(v,5) != 2) ;
gsl_vector_uchar_swap_elements (v, 2, 5) ;
status |= (gsl_vector_uchar_get(v,2) != 2) ;
status |= (gsl_vector_uchar_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_uchar" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_uchar_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_uchar_get (v, i) != (unsigned char) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_uchar" "_reverse" " (static)" " reverses elements") ;
{
unsigned char exp_max = gsl_vector_uchar_get(v, 0);
unsigned char exp_min = gsl_vector_uchar_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
unsigned char k = gsl_vector_uchar_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_uchar_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
unsigned char k = gsl_vector_uchar_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_uchar_get (v, i) ;
exp_imax = i;
}
}
{
unsigned char max = gsl_vector_uchar_max (v) ;
gsl_test (max != exp_max, "gsl_vector_uchar" "_max returns correct maximum value");
}
{
unsigned char min = gsl_vector_uchar_min (v) ;
gsl_test (min != exp_min, "gsl_vector_uchar" "_min returns correct minimum value");
}
{
unsigned char min, max;
gsl_vector_uchar_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_uchar" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_uchar" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_uchar_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_uchar" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_uchar_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_uchar" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_uchar_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_uchar" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_uchar" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_uchar * a = gsl_vector_uchar_calloc (1027);
gsl_vector_uchar * b = gsl_vector_uchar_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (a, i, (unsigned char)(3 + i));
gsl_vector_uchar_set (b, i, (unsigned char)(3 + 2 * i));
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_add vector addition");
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_sub vector subtraction");
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_mul multiplication");
}
gsl_vector_uchar_memcpy (v, a);
gsl_vector_uchar_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
unsigned char r = gsl_vector_uchar_get (v,i);
unsigned char x = gsl_vector_uchar_get (a,i);
unsigned char y = gsl_vector_uchar_get (b,i);
unsigned char z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_uchar" "_div division");
}
gsl_vector_uchar_free (a);
gsl_vector_uchar_free (b);
}
gsl_vector_uchar_free (v);
}
void
test_uchar_binary (void)
{
gsl_vector_uchar * v = gsl_vector_uchar_calloc (1027);
gsl_vector_uchar * w = gsl_vector_uchar_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) (1027 - i));
};
gsl_vector_uchar_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_uchar_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned char) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_write and read");
fclose (f);
}
gsl_vector_uchar_free (v);
gsl_vector_uchar_free (w);
}
void
test_uchar_trap (void)
{
gsl_vector_uchar * v = gsl_vector_uchar_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_uchar_set (v, j - 1, (unsigned char)0);
gsl_test (!status, "gsl_vector_uchar" "_set traps index below lower bound");
status = 0;
gsl_vector_uchar_set (v, 1027 + 1, (unsigned char)0);
gsl_test (!status, "gsl_vector_uchar" "_set traps index above upper bound");
status = 0;
gsl_vector_uchar_set (v, 1027, (unsigned char)0);
gsl_test (!status, "gsl_vector_uchar" "_set traps index at upper bound");
status = 0;
x = gsl_vector_uchar_get (v, j - 1);
gsl_test (!status, "gsl_vector_uchar" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_uchar" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_uchar_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_uchar" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_uchar" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_uchar_get (v, 1027);
gsl_test (!status, "gsl_vector_uchar" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_uchar" "_get returns zero for index at upper bound");
gsl_vector_uchar_free (v);
}
# 134 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_uchar_text (void);
void
test_uchar_text (void)
{
gsl_vector_uchar * v = gsl_vector_uchar_alloc (1027);
gsl_vector_uchar * w = gsl_vector_uchar_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_uchar_set (v, i, (unsigned char) i);
};
gsl_vector_uchar_fprintf (f, v, "%u");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_uchar_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (unsigned char) i)
status = 1;
};
gsl_test (status, "gsl_vector_uchar" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_uchar_free (v);
gsl_vector_uchar_free (w);
}
# 135 "test.c" 2
# 1 "../templates_off.h" 1
# 136 "test.c" 2
# 1 "../templates_on.h" 1
# 140 "test.c" 2
# 1 "test_source.c" 1
# 20 "test_source.c"
void test_char_func (void);
void test_char_binary (void);
void test_char_trap (void);
void
test_char_func (void)
{
gsl_vector_char * v;
size_t i;
v = gsl_vector_char_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_char" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_char" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_char" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) i);
}
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[i] != (char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_char" "_set" " (static)" " writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
if (gsl_vector_char_get (v, i) != (char) i)
status = 1;
};
gsl_test (status,
"gsl_vector_char" "_get" " (static)" " reads from array");
v->stride = 2;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (gsl_vector_char_get (v, i) != (char) (2 * i))
status = 1;
};
gsl_test (status, "gsl_vector_char" "_get" " (static)" " reads with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_vector_char_set (v, i, (char) (i + 1000));
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * i] != (char) (i + 1000))
status = 1;
};
gsl_test (status, "gsl_vector_char" "_set" " (static)" " writes with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) i);
}
gsl_vector_char_swap_elements (v, 2, 5) ;
status = (gsl_vector_char_get(v,2) != 5) ;
status |= (gsl_vector_char_get(v,5) != 2) ;
gsl_vector_char_swap_elements (v, 2, 5) ;
status |= (gsl_vector_char_get(v,2) != 2) ;
status |= (gsl_vector_char_get(v,5) != 5) ;
gsl_test (status, "gsl_vector_char" "_swap_elements" " (static)" " exchanges elements") ;
status = 0;
gsl_vector_char_reverse (v) ;
for (i = 0; i < 1027; i++)
{
status |= (gsl_vector_char_get (v, i) != (char) (1027 - i - 1));
}
gsl_test (status, "gsl_vector_char" "_reverse" " (static)" " reverses elements") ;
{
char exp_max = gsl_vector_char_get(v, 0);
char exp_min = gsl_vector_char_get(v, 0);
size_t exp_imax = 0, exp_imin = 0;
for (i = 0; i < 1027; i++)
{
char k = gsl_vector_char_get (v, i) ;
if (k < exp_min) {
exp_min = gsl_vector_char_get (v, i);
exp_imin = i;
}
}
for (i = 0; i < 1027; i++)
{
char k = gsl_vector_char_get (v, i) ;
if (k > exp_max) {
exp_max = gsl_vector_char_get (v, i) ;
exp_imax = i;
}
}
{
char max = gsl_vector_char_max (v) ;
gsl_test (max != exp_max, "gsl_vector_char" "_max returns correct maximum value");
}
{
char min = gsl_vector_char_min (v) ;
gsl_test (min != exp_min, "gsl_vector_char" "_min returns correct minimum value");
}
{
char min, max;
gsl_vector_char_minmax (v, &min, &max);
gsl_test (max != exp_max, "gsl_vector_char" "_minmax returns correct maximum value");
gsl_test (min != exp_min, "gsl_vector_char" "_minmax returns correct minimum value");
}
{
size_t imax = gsl_vector_char_max_index (v) ;
gsl_test (imax != exp_imax, "gsl_vector_char" "_max_index returns correct maximum i");
}
{
size_t imin = gsl_vector_char_min_index (v) ;
gsl_test (imin != exp_imin, "gsl_vector_char" "_min_index returns correct minimum i");
}
{
size_t imin, imax;
gsl_vector_char_minmax_index (v, &imin, &imax);
gsl_test (imax != exp_imax, "gsl_vector_char" "_minmax_index returns correct maximum i");
gsl_test (imin != exp_imin, "gsl_vector_char" "_minmax_index returns correct minimum i");
}
}
{
gsl_vector_char * a = gsl_vector_char_calloc (1027);
gsl_vector_char * b = gsl_vector_char_calloc (1027);
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (a, i, (char)(3 + i));
gsl_vector_char_set (b, i, (char)(3 + 2 * i));
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_add (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x + y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_char" "_add vector addition");
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_sub (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x - y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_char" "_sub vector subtraction");
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_mul (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x * y;
if (r != z)
status = 1;
}
gsl_test (status, "gsl_vector_char" "_mul multiplication");
}
gsl_vector_char_memcpy (v, a);
gsl_vector_char_div (v, b);
{
int status = 0;
for (i = 0; i < 1027; i++)
{
char r = gsl_vector_char_get (v,i);
char x = gsl_vector_char_get (a,i);
char y = gsl_vector_char_get (b,i);
char z = x / y;
if (fabs(r - z) > 2 * 1.1920928955078125e-07 * fabs(z))
status = 1;
}
gsl_test (status, "gsl_vector_char" "_div division");
}
gsl_vector_char_free (a);
gsl_vector_char_free (b);
}
gsl_vector_char_free (v);
}
void
test_char_binary (void)
{
gsl_vector_char * v = gsl_vector_char_calloc (1027);
gsl_vector_char * w = gsl_vector_char_calloc (1027);
size_t i;
{
FILE *f = fopen ("test.dat", "wb");
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) (1027 - i));
};
gsl_vector_char_fwrite (f, v);
fclose (f);
}
{
FILE *f = fopen ("test.dat", "rb");
gsl_vector_char_fread (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (char) (1027 - i))
status = 1;
};
gsl_test (status, "gsl_vector_char" "_write and read");
fclose (f);
}
gsl_vector_char_free (v);
gsl_vector_char_free (w);
}
void
test_char_trap (void)
{
gsl_vector_char * v = gsl_vector_char_alloc (1027);
size_t j = 0;
double x;
status = 0;
gsl_vector_char_set (v, j - 1, (char)0);
gsl_test (!status, "gsl_vector_char" "_set traps index below lower bound");
status = 0;
gsl_vector_char_set (v, 1027 + 1, (char)0);
gsl_test (!status, "gsl_vector_char" "_set traps index above upper bound");
status = 0;
gsl_vector_char_set (v, 1027, (char)0);
gsl_test (!status, "gsl_vector_char" "_set traps index at upper bound");
status = 0;
x = gsl_vector_char_get (v, j - 1);
gsl_test (!status, "gsl_vector_char" "_get traps index below lower bound");
gsl_test (x != 0,
"gsl_vector_char" "_get returns zero for index below lower bound");
status = 0;
x = gsl_vector_char_get (v, 1027 + 1);
gsl_test (!status, "gsl_vector_char" "_get traps index above upper bound");
gsl_test (x != 0,
"gsl_vector_char" "_get returns zero for index above upper bound");
status = 0;
x = gsl_vector_char_get (v, 1027);
gsl_test (!status, "gsl_vector_char" "_get traps index at upper bound");
gsl_test (x != 0,
"gsl_vector_char" "_get returns zero for index at upper bound");
gsl_vector_char_free (v);
}
# 141 "test.c" 2
# 1 "test_io.c" 1
# 20 "test_io.c"
void test_char_text (void);
void
test_char_text (void)
{
gsl_vector_char * v = gsl_vector_char_alloc (1027);
gsl_vector_char * w = gsl_vector_char_alloc (1027);
size_t i;
{
FILE *f = fopen ("test.txt", "w");
for (i = 0; i < 1027; i++)
{
gsl_vector_char_set (v, i, (char) i);
};
gsl_vector_char_fprintf (f, v, "%d");
fclose (f);
}
{
FILE *f = fopen ("test.txt", "r");
gsl_vector_char_fscanf (f, w);
status = 0;
for (i = 0; i < 1027; i++)
{
if (w->data[i] != (char) i)
status = 1;
};
gsl_test (status, "gsl_vector_char" "_fprintf and fscanf");
fclose (f);
}
gsl_vector_char_free (v);
gsl_vector_char_free (w);
}
# 142 "test.c" 2
# 1 "../templates_off.h" 1
# 143 "test.c" 2
void my_error_handler (const char *reason, const char *file,
int line, int err);
int
main (void)
{
gsl_ieee_env_setup ();
test_func ();
test_float_func ();
test_long_double_func ();
test_ulong_func ();
test_long_func ();
test_uint_func ();
test_int_func ();
test_ushort_func ();
test_short_func ();
test_uchar_func ();
test_char_func ();
test_complex_func ();
test_complex_float_func ();
test_complex_long_double_func ();
test_text ();
test_float_text ();
test_long_double_text ();
test_ulong_text ();
test_long_text ();
test_uint_text ();
test_int_text ();
test_ushort_text ();
test_short_text ();
test_uchar_text ();
test_char_text ();
test_complex_text ();
test_complex_float_text ();
test_complex_long_double_text ();
test_binary ();
test_float_binary ();
test_long_double_binary ();
test_ulong_binary ();
test_long_binary ();
test_uint_binary ();
test_int_binary ();
test_ushort_binary ();
test_short_binary ();
test_uchar_binary ();
test_char_binary ();
test_complex_binary ();
test_complex_float_binary ();
test_complex_long_double_binary ();
gsl_warnings_off = 1;
gsl_set_error_handler (&my_error_handler);
test_trap ();
test_float_trap ();
test_long_double_trap ();
test_ulong_trap ();
test_long_trap ();
test_uint_trap ();
test_int_trap ();
test_ushort_trap ();
test_short_trap ();
test_uchar_trap ();
test_char_trap ();
test_complex_trap ();
test_complex_float_trap ();
test_complex_long_double_trap ();
exit (gsl_test_summary ());
}
void
my_error_handler (const char *reason, const char *file, int line, int err)
{
if (0)
printf ("(caught [%s:%d: %s (%d)])\n", file, line, reason, err);
status = 1;
}
# 7 "test_static.c" 2
--0-680902919-1049927454=:38667
Content-Type: text/plain; name="vecfloatcomplexswap.i"
Content-Description: vecfloatcomplexswap.i
Content-Disposition: inline; filename="vecfloatcomplexswap.i"
# 1 "vecfloatcomplexswap.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "vecfloatcomplexswap.c"
# 10 "vecfloatcomplexswap.c"
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 40 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 2 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
typedef unsigned int size_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 140 "/usr/include/stdlib.h" 3 4
typedef int ssize_t;
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 11 "vecfloatcomplexswap.c" 2
# 1 "/usr/include/fcntl.h" 1 3 4
# 16 "/usr/include/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.14 97/12/05 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
#pragma ident "@(#)types.h 1.68 02/06/10 SMI"
# 1 "/usr/include/sys/machtypes.h" 1 3 4
# 16 "/usr/include/sys/machtypes.h" 3 4
#pragma ident "@(#)machtypes.h 1.13 99/05/04 SMI"
# 33 "/usr/include/sys/machtypes.h" 3 4
typedef struct _label_t { long val[2]; } label_t;
typedef unsigned char lock_t;
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 45 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
# 1 "/usr/include/sys/int_types.h" 1 3 4
# 9 "/usr/include/sys/int_types.h" 3 4
#pragma ident "@(#)int_types.h 1.6 97/08/20 SMI"
# 62 "/usr/include/sys/int_types.h" 3 4
typedef char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef long long int64_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
# 94 "/usr/include/sys/int_types.h" 3 4
typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
# 110 "/usr/include/sys/int_types.h" 3 4
typedef int intptr_t;
typedef unsigned int uintptr_t;
typedef char int_least8_t;
typedef short int_least16_t;
typedef int int_least32_t;
typedef long long int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned long long uint_least64_t;
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long long longlong_t;
typedef unsigned long long u_longlong_t;
# 85 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long t_scalar_t;
typedef unsigned long t_uscalar_t;
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef char *caddr_t;
typedef long daddr_t;
typedef short cnt_t;
typedef ulong_t paddr_t;
# 118 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int ptrdiff_t;
# 127 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t pfn_t;
typedef ulong_t pgcnt_t;
typedef long spgcnt_t;
typedef uchar_t use_t;
typedef short sysid_t;
typedef short index_t;
typedef void *timeout_id_t;
typedef void *bufcall_id_t;
# 149 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long off_t;
# 158 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t off64_t;
typedef ulong_t ino_t;
typedef long blkcnt_t;
typedef ulong_t fsblkcnt_t;
typedef ulong_t fsfilcnt_t;
# 183 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef u_longlong_t ino64_t;
typedef longlong_t blkcnt64_t;
typedef u_longlong_t fsblkcnt64_t;
typedef u_longlong_t fsfilcnt64_t;
typedef long blksize_t;
typedef enum { B_FALSE, B_TRUE } boolean_t;
# 210 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int64_t pad64_t;
typedef uint64_t upad64_t;
# 223 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t offset_t;
typedef u_longlong_t u_offset_t;
typedef u_longlong_t len_t;
typedef longlong_t diskaddr_t;
# 244 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
offset_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lloff_t;
# 264 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
diskaddr_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lldaddr_t;
typedef uint_t k_fltset_t;
# 287 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long id_t;
typedef uint_t useconds_t;
typedef long suseconds_t;
# 308 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t major_t;
typedef ulong_t minor_t;
typedef short pri_t;
# 328 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ushort_t o_mode_t;
typedef short o_dev_t;
typedef ushort_t o_uid_t;
typedef o_uid_t o_gid_t;
typedef short o_nlink_t;
typedef short o_pid_t;
typedef ushort_t o_ino_t;
typedef int key_t;
typedef ulong_t mode_t;
# 356 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef uid_t gid_t;
typedef id_t taskid_t;
typedef id_t projid_t;
typedef uint_t pthread_t;
typedef uint_t pthread_key_t;
typedef struct _pthread_mutex {
struct {
uint16_t __pthread_mutex_flag1;
uint8_t __pthread_mutex_flag2;
uint8_t __pthread_mutex_ceiling;
uint16_t __pthread_mutex_type;
uint16_t __pthread_mutex_magic;
} __pthread_mutex_flags;
union {
struct {
uint8_t __pthread_mutex_pad[8];
} __pthread_mutex_lock64;
struct {
uint32_t __pthread_ownerpid;
uint32_t __pthread_lockword;
} __pthread_mutex_lock32;
upad64_t __pthread_mutex_owner64;
} __pthread_mutex_lock;
upad64_t __pthread_mutex_data;
} pthread_mutex_t;
typedef struct _pthread_cond {
struct {
uint8_t __pthread_cond_flag[4];
uint16_t __pthread_cond_type;
uint16_t __pthread_cond_magic;
} __pthread_cond_flags;
upad64_t __pthread_cond_data;
} pthread_cond_t;
typedef struct _pthread_rwlock {
int32_t __pthread_rwlock_readers;
uint16_t __pthread_rwlock_type;
uint16_t __pthread_rwlock_magic;
upad64_t __pthread_rwlock_pad1[3];
upad64_t __pthread_rwlock_pad2[2];
upad64_t __pthread_rwlock_pad3[2];
} pthread_rwlock_t;
typedef struct _pthread_attr {
void *__pthread_attrp;
} pthread_attr_t;
typedef struct _pthread_mutexattr {
void *__pthread_mutexattrp;
} pthread_mutexattr_t;
typedef struct _pthread_condattr {
void *__pthread_condattrp;
} pthread_condattr_t;
typedef struct _once {
upad64_t __pthread_once_pad[4];
} pthread_once_t;
typedef struct _pthread_rwlockattr {
void *__pthread_rwlockattrp;
} pthread_rwlockattr_t;
typedef ulong_t dev_t;
typedef ulong_t nlink_t;
typedef long pid_t;
# 485 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long time_t;
typedef long clock_t;
typedef int clockid_t;
typedef int timer_t;
typedef unsigned char unchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
# 561 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef struct _quad { int val[2]; } quad_t;
typedef quad_t quad;
# 1 "/usr/include/sys/select.h" 1 3 4
# 12 "/usr/include/sys/select.h" 3 4
#pragma ident "@(#)select.h 1.16 98/04/27 SMI"
# 1 "/usr/include/sys/time.h" 1 3 4
# 22 "/usr/include/sys/time.h" 3 4
#pragma ident "@(#)time.h 2.66 01/01/17 SMI"
# 49 "/usr/include/sys/time.h" 3 4
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
# 82 "/usr/include/sys/time.h" 3 4
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
# 100 "/usr/include/sys/time.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 101 "/usr/include/sys/time.h" 2 3 4
# 155 "/usr/include/sys/time.h" 3 4
struct itimerval {
struct timeval it_interval;
struct timeval it_value;
};
# 203 "/usr/include/sys/time.h" 3 4
typedef longlong_t hrtime_t;
# 320 "/usr/include/sys/time.h" 3 4
int adjtime(struct timeval *, struct timeval *);
# 331 "/usr/include/sys/time.h" 3 4
int getitimer(int, struct itimerval *);
int utimes(const char *, const struct timeval *);
int setitimer(int, struct itimerval *, struct itimerval *);
# 369 "/usr/include/sys/time.h" 3 4
int settimeofday(struct timeval *, void *);
hrtime_t gethrtime(void);
hrtime_t gethrvtime(void);
# 389 "/usr/include/sys/time.h" 3 4
int gettimeofday(struct timeval *, void *);
# 410 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 16 "/usr/include/time.h" 3 4
#pragma ident "@(#)time.h 1.39 99/08/10 SMI"
# 1 "/usr/include/iso/time_iso.h" 1 3 4
# 28 "/usr/include/iso/time_iso.h" 3 4
#pragma ident "@(#)time_iso.h 1.1 99/08/09 SMI"
# 69 "/usr/include/iso/time_iso.h" 3 4
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
extern char *asctime(const struct tm *);
extern clock_t clock(void);
extern char *ctime(const time_t *);
extern double difftime(time_t, time_t);
extern struct tm *gmtime(const time_t *);
extern struct tm *localtime(const time_t *);
extern time_t mktime(struct tm *);
extern time_t time(time_t *);
extern size_t strftime(char *, size_t, const char *, const struct tm *);
# 21 "/usr/include/time.h" 2 3 4
# 67 "/usr/include/time.h" 3 4
extern char *strptime(const char *, const char *, struct tm *);
# 83 "/usr/include/time.h" 3 4
# 1 "/usr/include/sys/time_impl.h" 1 3 4
# 15 "/usr/include/sys/time_impl.h" 3 4
#pragma ident "@(#)time_impl.h 1.5 99/10/05 SMI"
# 36 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec {
time_t tv_sec;
long tv_nsec;
} timespec_t;
# 60 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec timestruc_t;
# 79 "/usr/include/sys/time_impl.h" 3 4
typedef struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
} itimerspec_t;
# 84 "/usr/include/time.h" 2 3 4
# 98 "/usr/include/time.h" 3 4
union sigval {
int sival_int;
void *sival_ptr;
};
struct sigevent {
int sigev_notify;
int sigev_signo;
union sigval sigev_value;
void (*sigev_notify_function)(union sigval);
pthread_attr_t *sigev_notify_attributes;
int __sigev_pad2;
};
extern int clock_getres(clockid_t, struct timespec *);
extern int clock_gettime(clockid_t, struct timespec *);
extern int clock_settime(clockid_t, const struct timespec *);
extern int timer_create(clockid_t, struct sigevent *, timer_t *);
extern int timer_delete(timer_t);
extern int timer_getoverrun(timer_t);
extern int timer_gettime(timer_t, struct itimerspec *);
extern int timer_settime(timer_t, int, const struct itimerspec *,
struct itimerspec *);
extern int nanosleep(const struct timespec *, struct timespec *);
extern void tzset(void);
extern char *tzname[2];
extern long _sysconf(int);
extern long timezone;
extern int daylight;
extern int cftime(char *, char *, const time_t *);
extern int ascftime(char *, const char *, const struct tm *);
extern long altzone;
extern struct tm *getdate(const char *);
extern int getdate_err;
# 411 "/usr/include/sys/time.h" 2 3 4
# 423 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 424 "/usr/include/sys/time.h" 2 3 4
# 18 "/usr/include/sys/select.h" 2 3 4
# 45 "/usr/include/sys/select.h" 3 4
typedef long fd_mask;
typedef long fds_mask;
# 73 "/usr/include/sys/select.h" 3 4
typedef struct fd_set {
long fds_bits[(((1024)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))];
} fd_set;
# 97 "/usr/include/sys/select.h" 3 4
extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 574 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 24 "/usr/include/fcntl.h" 2 3 4
# 1 "/usr/include/sys/fcntl.h" 1 3 4
# 16 "/usr/include/sys/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.45 98/07/17 SMI"
# 164 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock {
short l_type;
short l_whence;
off_t l_start;
off_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock_t;
# 194 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock64 {
short l_type;
short l_whence;
off64_t l_start;
off64_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock64_t;
# 272 "/usr/include/sys/fcntl.h" 3 4
typedef struct fshare {
short f_access;
short f_deny;
int f_id;
} fshare_t;
# 25 "/usr/include/fcntl.h" 2 3 4
# 72 "/usr/include/fcntl.h" 3 4
extern int fcntl(int, int, ...);
extern int open(const char *, int, ...);
extern int creat(const char *, mode_t);
extern int directio(int, int);
extern int open64(const char *, int, ...);
extern int creat64(const char *, mode_t);
# 12 "vecfloatcomplexswap.c" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
# 88 "/usr/include/iso/stdio_iso.h" 3 4
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 13 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_math.h" 1
# 22 "../gsl/gsl_math.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 1 3 4
# 23 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
#pragma ident "@(#)math.h 2.10 99/07/29 SMI"
# 1 "/usr/include/iso/math_iso.h" 1 3 4
#pragma ident "@(#)math_iso.h 1.1 99/07/30 SMI"
# 20 "/usr/include/iso/math_iso.h" 3 4
typedef union _h_val {
unsigned long _i[sizeof(double) / sizeof(unsigned long)];
double _d;
} _h_val;
extern const _h_val __huge_val;
# 37 "/usr/include/iso/math_iso.h" 3 4
extern double acos (double);
extern double asin (double);
extern double atan (double);
extern double atan2 (double, double);
extern double cos (double);
extern double sin (double);
extern double tan (double);
extern double cosh (double);
extern double sinh (double);
extern double tanh (double);
extern double exp (double);
extern double frexp (double, int *);
extern double ldexp (double, int);
extern double log (double);
extern double log10 (double);
extern double modf (double, double *);
extern double pow (double, double);
extern double sqrt (double);
extern double ceil (double);
extern double fabs (double);
extern double floor (double);
extern double fmod (double, double);
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 89 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int signgam;
enum version {libm_ieee = -1, c_issue_4, ansi_1, strict_ansi};
extern const enum version _lib_version;
struct exception {
int type;
char *name;
double arg1;
double arg2;
double retval;
};
# 145 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double erf (double);
extern double erfc (double);
extern double gamma (double);
extern double hypot (double, double);
extern int isnan (double);
extern double j0 (double);
extern double j1 (double);
extern double jn (int, double);
extern double lgamma (double);
extern double y0 (double);
extern double y1 (double);
extern double yn (int, double);
# 172 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double acosh (double);
extern double asinh (double);
extern double atanh (double);
extern double cbrt (double);
extern double logb (double);
extern double nextafter (double, double);
extern double remainder (double, double);
extern double scalb (double, double);
# 192 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double expm1 (double);
extern int ilogb (double);
extern double log1p (double);
extern double rint (double);
# 208 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int matherr (struct exception *);
extern double significand (double);
extern double copysign (double, double);
extern double scalbn (double, int);
# 243 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern float modff (float, float *);
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 1 3 4
# 20 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
#pragma ident "@(#)floatingpoint.h 2.5 99/06/22 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 1 3 4
# 17 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
#pragma ident "@(#)ieeefp.h 2.8 99/10/29"
# 27 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_direction_type {
fp_nearest = 0,
fp_tozero = 1,
fp_positive = 2,
fp_negative = 3
};
enum fp_precision_type {
fp_extended = 0,
fp_single = 1,
fp_double = 2,
fp_precision_3 = 3
};
enum fp_exception_type {
fp_inexact = 0,
fp_division = 1,
fp_underflow = 2,
fp_overflow = 3,
fp_invalid = 4
};
enum fp_trap_enable_type {
fp_trap_inexact = 0,
fp_trap_division = 1,
fp_trap_underflow = 2,
fp_trap_overflow = 3,
fp_trap_invalid = 4
};
# 133 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_class_type {
fp_zero = 0,
fp_subnormal = 1,
fp_normal = 2,
fp_infinity = 3,
fp_quiet = 4,
fp_signaling = 5
};
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef int sigfpe_code_type;
typedef void (*sigfpe_handler_type)();
extern sigfpe_handler_type sigfpe (sigfpe_code_type, sigfpe_handler_type);
typedef float single;
typedef unsigned extended[3];
typedef long double quadruple;
typedef unsigned fp_exception_field_type;
# 94 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef char decimal_string[512];
typedef struct {
enum fp_class_type fpclass;
int sign;
int exponent;
decimal_string ds;
int more;
int ndigits;
} decimal_record;
enum decimal_form {
fixed_form,
floating_form
};
typedef struct {
enum fp_direction_type rd;
enum decimal_form df;
int ndigits;
} decimal_mode;
enum decimal_string_form {
invalid_form,
whitespace_form,
fixed_int_form,
fixed_intdot_form,
fixed_dotfrac_form,
fixed_intdotfrac_form,
floating_int_form,
floating_intdot_form,
floating_dotfrac_form,
floating_intdotfrac_form,
inf_form,
infinity_form,
nan_form,
nanstring_form
};
extern void single_to_decimal (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void double_to_decimal (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void extended_to_decimal (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void quadruple_to_decimal (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_single (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_double (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_extended (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_quadruple (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void string_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **);
extern void func_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, int (*)(void), int *, int (*)(int));
extern void file_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, FILE *, int *);
extern char *seconvert (single *, int, int *, int *, char *);
extern char *sfconvert (single *, int, int *, int *, char *);
extern char *sgconvert (single *, int, int, char *);
extern char *econvert (double, int, int *, int *, char *);
extern char *fconvert (double, int, int *, int *, char *);
extern char *gconvert (double, int, int, char *);
extern char *qeconvert (quadruple *, int, int *, int *, char *);
extern char *qfconvert (quadruple *, int, int *, int *, char *);
extern char *qgconvert (quadruple *, int, int, char *);
extern char *ecvt (double, int, int *, int *);
extern char *fcvt (double, int, int *, int *);
extern char *gcvt (double, int, char *);
extern double atof (const char *);
extern double strtod (const char *, char **);
# 251 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 23 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_sys.h" 1
# 33 "../gsl/gsl_sys.h"
double gsl_log1p (const double x);
double gsl_expm1 (const double x);
double gsl_hypot (const double x, const double y);
double gsl_acosh (const double x);
double gsl_asinh (const double x);
double gsl_atanh (const double x);
int gsl_isnan (const double x);
int gsl_isinf (const double x);
int gsl_finite (const double x);
double gsl_nan (void);
double gsl_posinf (void);
double gsl_neginf (void);
double gsl_fdiv (const double x, const double y);
double gsl_coerce_double (const double x);
float gsl_coerce_float (const float x);
long double gsl_coerce_long_double (const long double x);
double gsl_ldexp(const double x, const int e);
double gsl_frexp(const double x, int * e);
int gsl_fcmp (const double x1, const double x2, const double epsilon);
# 24 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_machine.h" 1
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 1 3 4
# 11 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
#pragma ident "@(#)limits.h 1.51 99/10/08 SMI"
# 1 "/usr/include/iso/limits_iso.h" 1 3 4
# 28 "/usr/include/iso/limits_iso.h" 3 4
#pragma ident "@(#)limits_iso.h 1.1 99/08/09 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 41 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
# 1 "/usr/include/sys/int_limits.h" 1 3 4
# 9 "/usr/include/sys/int_limits.h" 3 4
#pragma ident "@(#)int_limits.h 1.6 99/08/06 SMI"
# 42 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 12 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 2 3 4
# 6 "../gsl/gsl_machine.h" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/float.h" 1 3 4
# 7 "../gsl/gsl_machine.h" 2
# 25 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_precision.h" 1
# 24 "../gsl/gsl_precision.h"
# 1 "../gsl/gsl_types.h" 1
# 25 "../gsl/gsl_precision.h" 2
# 36 "../gsl/gsl_precision.h"
typedef unsigned int gsl_prec_t;
# 56 "../gsl/gsl_precision.h"
extern const double gsl_prec_eps[];
extern const double gsl_prec_sqrt_eps[];
extern const double gsl_prec_root3_eps[];
extern const double gsl_prec_root4_eps[];
extern const double gsl_prec_root5_eps[];
extern const double gsl_prec_root6_eps[];
# 26 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_nan.h" 1
# 27 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_pow_int.h" 1
# 33 "../gsl/gsl_pow_int.h"
# 54 "../gsl/gsl_pow_int.h"
double gsl_pow_2(const double x);
double gsl_pow_3(const double x);
double gsl_pow_4(const double x);
double gsl_pow_5(const double x);
double gsl_pow_6(const double x);
double gsl_pow_7(const double x);
double gsl_pow_8(const double x);
double gsl_pow_9(const double x);
double gsl_pow_int(double x, int n);
# 28 "../gsl/gsl_math.h" 2
# 108 "../gsl/gsl_math.h"
# 126 "../gsl/gsl_math.h"
double gsl_max (double a, double b);
double gsl_min (double a, double b);
# 185 "../gsl/gsl_math.h"
struct gsl_function_struct
{
double (* function) (double x, void * params);
void * params;
};
typedef struct gsl_function_struct gsl_function ;
struct gsl_function_fdf_struct
{
double (* f) (double x, void * params);
double (* df) (double x, void * params);
void (* fdf) (double x, void * params, double * f, double * df);
void * params;
};
typedef struct gsl_function_fdf_struct gsl_function_fdf ;
# 214 "../gsl/gsl_math.h"
struct gsl_function_vec_struct
{
int (* function) (double x, double y[], void * params);
void * params;
};
typedef struct gsl_function_vec_struct gsl_function_vec ;
# 14 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 25 "../gsl/gsl_vector_complex_long_double.h"
# 1 "../gsl/gsl_errno.h" 1
# 24 "../gsl/gsl_errno.h"
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 26 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_long_double.h"
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
# 244 "../gsl/gsl_vector_complex_long_double.h"
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_double.h"
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
# 244 "../gsl/gsl_vector_complex_double.h"
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_float.h"
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
# 244 "../gsl/gsl_vector_complex_float.h"
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_ulong.h"
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_long.h"
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_uint.h"
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_int.h"
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_ushort.h"
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_short.h"
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_uchar.h"
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_char.h"
# 23 "../gsl/gsl_vector.h" 2
# 15 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_test.h" 1
# 33 "../gsl/gsl_test.h"
void
gsl_test (int status, const char *test_description, ...);
void
gsl_test_rel (double result, double expected, double relative_error,
const char *test_description, ...) ;
void
gsl_test_abs (double result, double expected, double absolute_error,
const char *test_description, ...) ;
void
gsl_test_factor (double result, double expected, double factor,
const char *test_description, ...) ;
void
gsl_test_int (int result, int expected, const char *test_description, ...) ;
void
gsl_test_str (const char * result, const char * expected,
const char *test_description, ...) ;
void
gsl_test_verbose (int verbose) ;
int
gsl_test_summary (void) ;
# 16 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_ieee_utils.h" 1
# 34 "../gsl/gsl_ieee_utils.h"
enum {
GSL_IEEE_TYPE_NAN = 1,
GSL_IEEE_TYPE_INF = 2,
GSL_IEEE_TYPE_NORMAL = 3,
GSL_IEEE_TYPE_DENORMAL = 4,
GSL_IEEE_TYPE_ZERO = 5
} ;
typedef struct {
int sign ;
char mantissa[24] ;
int exponent ;
int type ;
} gsl_ieee_float_rep ;
typedef struct {
int sign ;
char mantissa[53] ;
int exponent ;
int type ;
} gsl_ieee_double_rep ;
void gsl_ieee_printf_float (const float * x) ;
void gsl_ieee_printf_double (const double * x) ;
void gsl_ieee_fprintf_float (FILE * stream, const float * x) ;
void gsl_ieee_fprintf_double (FILE * stream, const double * x) ;
void gsl_ieee_float_to_rep (const float * x, gsl_ieee_float_rep * r) ;
void gsl_ieee_double_to_rep (const double * x, gsl_ieee_double_rep * r) ;
enum {
GSL_IEEE_SINGLE_PRECISION = 1,
GSL_IEEE_DOUBLE_PRECISION = 2,
GSL_IEEE_EXTENDED_PRECISION = 3
} ;
enum {
GSL_IEEE_ROUND_TO_NEAREST = 1,
GSL_IEEE_ROUND_DOWN = 2,
GSL_IEEE_ROUND_UP = 3,
GSL_IEEE_ROUND_TO_ZERO = 4
} ;
enum {
GSL_IEEE_MASK_INVALID = 1,
GSL_IEEE_MASK_DENORMALIZED = 2,
GSL_IEEE_MASK_DIVISION_BY_ZERO = 4,
GSL_IEEE_MASK_OVERFLOW = 8,
GSL_IEEE_MASK_UNDERFLOW = 16,
GSL_IEEE_MASK_ALL = 31,
GSL_IEEE_TRAP_INEXACT = 32
} ;
void gsl_ieee_env_setup (void) ;
int gsl_ieee_read_mode_string (const char * description, int * precision,
int * rounding, int * exception_mask) ;
int gsl_ieee_set_mode (int precision, int rounding, int exception_mask) ;
# 17 "vecfloatcomplexswap.c" 2
int status = 0;
# 34 "vecfloatcomplexswap.c"
# 1 "../templates_on.h" 1
# 35 "vecfloatcomplexswap.c" 2
int
gsl_vector_swap_complex_float_elements_test
(gsl_vector_complex_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "vecfloatcomplexswap.c", 52, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "vecfloatcomplexswap.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
void test_complex_func (void)
{
size_t i;
gsl_vector_complex_float * v = gsl_vector_complex_float_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex_float" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex_float" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex_float" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (float) i || v->data[2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)(2 * i);
((x).dat[1]) = (float)(2 * i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x;
((x).dat[0]) = (float)i ;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (float) i || v->data[2 * 2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
{
gsl_complex_float x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex_float" "_swap_elements" " (static) " " exchanges elements") ;
status = 0;
gsl_vector_complex_float_free (v);
}
int main(void)
{
test_complex_func ();
return 0;
}
--0-680902919-1049927454=:38667--
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-09 22:36 Yuri Urazov
0 siblings, 0 replies; 15+ messages in thread
From: Yuri Urazov @ 2003-04-09 22:36 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/10365; it has been noted by GNATS.
From: Yuri Urazov <urazov@yahoo.com>
To: bangerth@dealii.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
Date: Wed, 9 Apr 2003 15:35:40 -0700 (PDT)
--0-631328318-1049927740=:45589
Content-Type: text/plain; charset=us-ascii
Content-Id:
Content-Disposition: inline
I am resending those .i files individually
---------------------------
I have attached two .i files in original filing,
actually they are in ifiles.tar.gz
I am sending the files again. If this is not what you
expected I apologize that I am that stupid and ask you
to send me a list of what you want.
Regards,
Yuri
--- bangerth@dealii.org wrote:
> Synopsis: Seems like bug in code generator on Sun
> Sparc (Sol;aris 8) platform
>
> State-Changed-From-To: open->feedback
> State-Changed-By: bangerth
> State-Changed-When: Wed Apr 9 21:01:00 2003
> State-Changed-Why:
> We need some preprocessed sources to reproduce
> the problem.
> Please review
> http://gcc.gnu.org/bugs.html
> to see what exactly we need.
>
> Regards
> Wolfgang
>
>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10365
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
--0-631328318-1049927740=:45589
Content-Type: text/plain; name="vecfloatcomplexswap.i"
Content-Description: vecfloatcomplexswap.i
Content-Disposition: inline; filename="vecfloatcomplexswap.i"
# 1 "vecfloatcomplexswap.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "vecfloatcomplexswap.c"
# 10 "vecfloatcomplexswap.c"
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 1 3 4
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 40 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 2 3 4
extern unsigned char __ctype[];
# 57 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
typedef unsigned int size_t;
# 96 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 140 "/usr/include/stdlib.h" 3 4
typedef int ssize_t;
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int dup2(int, int);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 11 "vecfloatcomplexswap.c" 2
# 1 "/usr/include/fcntl.h" 1 3 4
# 16 "/usr/include/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.14 97/12/05 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
#pragma ident "@(#)types.h 1.68 02/06/10 SMI"
# 1 "/usr/include/sys/machtypes.h" 1 3 4
# 16 "/usr/include/sys/machtypes.h" 3 4
#pragma ident "@(#)machtypes.h 1.13 99/05/04 SMI"
# 33 "/usr/include/sys/machtypes.h" 3 4
typedef struct _label_t { long val[2]; } label_t;
typedef unsigned char lock_t;
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 45 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
# 1 "/usr/include/sys/int_types.h" 1 3 4
# 9 "/usr/include/sys/int_types.h" 3 4
#pragma ident "@(#)int_types.h 1.6 97/08/20 SMI"
# 62 "/usr/include/sys/int_types.h" 3 4
typedef char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef long long int64_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
# 94 "/usr/include/sys/int_types.h" 3 4
typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
# 110 "/usr/include/sys/int_types.h" 3 4
typedef int intptr_t;
typedef unsigned int uintptr_t;
typedef char int_least8_t;
typedef short int_least16_t;
typedef int int_least32_t;
typedef long long int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned long long uint_least64_t;
# 46 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long long longlong_t;
typedef unsigned long long u_longlong_t;
# 85 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long t_scalar_t;
typedef unsigned long t_uscalar_t;
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef char *caddr_t;
typedef long daddr_t;
typedef short cnt_t;
typedef ulong_t paddr_t;
# 118 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int ptrdiff_t;
# 127 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t pfn_t;
typedef ulong_t pgcnt_t;
typedef long spgcnt_t;
typedef uchar_t use_t;
typedef short sysid_t;
typedef short index_t;
typedef void *timeout_id_t;
typedef void *bufcall_id_t;
# 149 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long off_t;
# 158 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t off64_t;
typedef ulong_t ino_t;
typedef long blkcnt_t;
typedef ulong_t fsblkcnt_t;
typedef ulong_t fsfilcnt_t;
# 183 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef u_longlong_t ino64_t;
typedef longlong_t blkcnt64_t;
typedef u_longlong_t fsblkcnt64_t;
typedef u_longlong_t fsfilcnt64_t;
typedef long blksize_t;
typedef enum { B_FALSE, B_TRUE } boolean_t;
# 210 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef int64_t pad64_t;
typedef uint64_t upad64_t;
# 223 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef longlong_t offset_t;
typedef u_longlong_t u_offset_t;
typedef u_longlong_t len_t;
typedef longlong_t diskaddr_t;
# 244 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
offset_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lloff_t;
# 264 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef union {
diskaddr_t _f;
struct {
int32_t _u;
int32_t _l;
} _p;
} lldaddr_t;
typedef uint_t k_fltset_t;
# 287 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long id_t;
typedef uint_t useconds_t;
typedef long suseconds_t;
# 308 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ulong_t major_t;
typedef ulong_t minor_t;
typedef short pri_t;
# 328 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef ushort_t o_mode_t;
typedef short o_dev_t;
typedef ushort_t o_uid_t;
typedef o_uid_t o_gid_t;
typedef short o_nlink_t;
typedef short o_pid_t;
typedef ushort_t o_ino_t;
typedef int key_t;
typedef ulong_t mode_t;
# 356 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef uid_t gid_t;
typedef id_t taskid_t;
typedef id_t projid_t;
typedef uint_t pthread_t;
typedef uint_t pthread_key_t;
typedef struct _pthread_mutex {
struct {
uint16_t __pthread_mutex_flag1;
uint8_t __pthread_mutex_flag2;
uint8_t __pthread_mutex_ceiling;
uint16_t __pthread_mutex_type;
uint16_t __pthread_mutex_magic;
} __pthread_mutex_flags;
union {
struct {
uint8_t __pthread_mutex_pad[8];
} __pthread_mutex_lock64;
struct {
uint32_t __pthread_ownerpid;
uint32_t __pthread_lockword;
} __pthread_mutex_lock32;
upad64_t __pthread_mutex_owner64;
} __pthread_mutex_lock;
upad64_t __pthread_mutex_data;
} pthread_mutex_t;
typedef struct _pthread_cond {
struct {
uint8_t __pthread_cond_flag[4];
uint16_t __pthread_cond_type;
uint16_t __pthread_cond_magic;
} __pthread_cond_flags;
upad64_t __pthread_cond_data;
} pthread_cond_t;
typedef struct _pthread_rwlock {
int32_t __pthread_rwlock_readers;
uint16_t __pthread_rwlock_type;
uint16_t __pthread_rwlock_magic;
upad64_t __pthread_rwlock_pad1[3];
upad64_t __pthread_rwlock_pad2[2];
upad64_t __pthread_rwlock_pad3[2];
} pthread_rwlock_t;
typedef struct _pthread_attr {
void *__pthread_attrp;
} pthread_attr_t;
typedef struct _pthread_mutexattr {
void *__pthread_mutexattrp;
} pthread_mutexattr_t;
typedef struct _pthread_condattr {
void *__pthread_condattrp;
} pthread_condattr_t;
typedef struct _once {
upad64_t __pthread_once_pad[4];
} pthread_once_t;
typedef struct _pthread_rwlockattr {
void *__pthread_rwlockattrp;
} pthread_rwlockattr_t;
typedef ulong_t dev_t;
typedef ulong_t nlink_t;
typedef long pid_t;
# 485 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef long time_t;
typedef long clock_t;
typedef int clockid_t;
typedef int timer_t;
typedef unsigned char unchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
# 561 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 3 4
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef struct _quad { int val[2]; } quad_t;
typedef quad_t quad;
# 1 "/usr/include/sys/select.h" 1 3 4
# 12 "/usr/include/sys/select.h" 3 4
#pragma ident "@(#)select.h 1.16 98/04/27 SMI"
# 1 "/usr/include/sys/time.h" 1 3 4
# 22 "/usr/include/sys/time.h" 3 4
#pragma ident "@(#)time.h 2.66 01/01/17 SMI"
# 49 "/usr/include/sys/time.h" 3 4
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
# 82 "/usr/include/sys/time.h" 3 4
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
# 100 "/usr/include/sys/time.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 1 3 4
# 101 "/usr/include/sys/time.h" 2 3 4
# 155 "/usr/include/sys/time.h" 3 4
struct itimerval {
struct timeval it_interval;
struct timeval it_value;
};
# 203 "/usr/include/sys/time.h" 3 4
typedef longlong_t hrtime_t;
# 320 "/usr/include/sys/time.h" 3 4
int adjtime(struct timeval *, struct timeval *);
# 331 "/usr/include/sys/time.h" 3 4
int getitimer(int, struct itimerval *);
int utimes(const char *, const struct timeval *);
int setitimer(int, struct itimerval *, struct itimerval *);
# 369 "/usr/include/sys/time.h" 3 4
int settimeofday(struct timeval *, void *);
hrtime_t gethrtime(void);
hrtime_t gethrvtime(void);
# 389 "/usr/include/sys/time.h" 3 4
int gettimeofday(struct timeval *, void *);
# 410 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 16 "/usr/include/time.h" 3 4
#pragma ident "@(#)time.h 1.39 99/08/10 SMI"
# 1 "/usr/include/iso/time_iso.h" 1 3 4
# 28 "/usr/include/iso/time_iso.h" 3 4
#pragma ident "@(#)time_iso.h 1.1 99/08/09 SMI"
# 69 "/usr/include/iso/time_iso.h" 3 4
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
extern char *asctime(const struct tm *);
extern clock_t clock(void);
extern char *ctime(const time_t *);
extern double difftime(time_t, time_t);
extern struct tm *gmtime(const time_t *);
extern struct tm *localtime(const time_t *);
extern time_t mktime(struct tm *);
extern time_t time(time_t *);
extern size_t strftime(char *, size_t, const char *, const struct tm *);
# 21 "/usr/include/time.h" 2 3 4
# 67 "/usr/include/time.h" 3 4
extern char *strptime(const char *, const char *, struct tm *);
# 83 "/usr/include/time.h" 3 4
# 1 "/usr/include/sys/time_impl.h" 1 3 4
# 15 "/usr/include/sys/time_impl.h" 3 4
#pragma ident "@(#)time_impl.h 1.5 99/10/05 SMI"
# 36 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec {
time_t tv_sec;
long tv_nsec;
} timespec_t;
# 60 "/usr/include/sys/time_impl.h" 3 4
typedef struct timespec timestruc_t;
# 79 "/usr/include/sys/time_impl.h" 3 4
typedef struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
} itimerspec_t;
# 84 "/usr/include/time.h" 2 3 4
# 98 "/usr/include/time.h" 3 4
union sigval {
int sival_int;
void *sival_ptr;
};
struct sigevent {
int sigev_notify;
int sigev_signo;
union sigval sigev_value;
void (*sigev_notify_function)(union sigval);
pthread_attr_t *sigev_notify_attributes;
int __sigev_pad2;
};
extern int clock_getres(clockid_t, struct timespec *);
extern int clock_gettime(clockid_t, struct timespec *);
extern int clock_settime(clockid_t, const struct timespec *);
extern int timer_create(clockid_t, struct sigevent *, timer_t *);
extern int timer_delete(timer_t);
extern int timer_getoverrun(timer_t);
extern int timer_gettime(timer_t, struct itimerspec *);
extern int timer_settime(timer_t, int, const struct itimerspec *,
struct itimerspec *);
extern int nanosleep(const struct timespec *, struct timespec *);
extern void tzset(void);
extern char *tzname[2];
extern long _sysconf(int);
extern long timezone;
extern int daylight;
extern int cftime(char *, char *, const time_t *);
extern int ascftime(char *, const char *, const struct tm *);
extern long altzone;
extern struct tm *getdate(const char *);
extern int getdate_err;
# 411 "/usr/include/sys/time.h" 2 3 4
# 423 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 424 "/usr/include/sys/time.h" 2 3 4
# 18 "/usr/include/sys/select.h" 2 3 4
# 45 "/usr/include/sys/select.h" 3 4
typedef long fd_mask;
typedef long fds_mask;
# 73 "/usr/include/sys/select.h" 3 4
typedef struct fd_set {
long fds_bits[(((1024)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))];
} fd_set;
# 97 "/usr/include/sys/select.h" 3 4
extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 574 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/types.h" 2 3 4
# 24 "/usr/include/fcntl.h" 2 3 4
# 1 "/usr/include/sys/fcntl.h" 1 3 4
# 16 "/usr/include/sys/fcntl.h" 3 4
#pragma ident "@(#)fcntl.h 1.45 98/07/17 SMI"
# 164 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock {
short l_type;
short l_whence;
off_t l_start;
off_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock_t;
# 194 "/usr/include/sys/fcntl.h" 3 4
typedef struct flock64 {
short l_type;
short l_whence;
off64_t l_start;
off64_t l_len;
int l_sysid;
pid_t l_pid;
long l_pad[4];
} flock64_t;
# 272 "/usr/include/sys/fcntl.h" 3 4
typedef struct fshare {
short f_access;
short f_deny;
int f_id;
} fshare_t;
# 25 "/usr/include/fcntl.h" 2 3 4
# 72 "/usr/include/fcntl.h" 3 4
extern int fcntl(int, int, ...);
extern int open(const char *, int, ...);
extern int creat(const char *, mode_t);
extern int directio(int, int);
extern int open64(const char *, int, ...);
extern int creat64(const char *, mode_t);
# 12 "vecfloatcomplexswap.c" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 34 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
#pragma ident "@(#)stdio.h 1.78 99/12/08 SMI"
# 1 "/usr/include/iso/stdio_iso.h" 1 3 4
# 32 "/usr/include/iso/stdio_iso.h" 3 4
#pragma ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
# 1 "/usr/include/sys/va_list.h" 1 3 4
# 9 "/usr/include/sys/va_list.h" 3 4
#pragma ident "@(#)va_list.h 1.12 99/05/04 SMI"
# 26 "/usr/include/sys/va_list.h" 3 4
typedef void *__va_list;
# 37 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 1 3 4
# 18 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
#pragma ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio_tag.h" 3 4
typedef struct __FILE __FILE;
# 38 "/usr/include/iso/stdio_iso.h" 2 3 4
# 1 "/usr/include/stdio_impl.h" 1 3 4
# 9 "/usr/include/stdio_impl.h" 3 4
#pragma ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
# 38 "/usr/include/stdio_impl.h" 3 4
struct __FILE
{
ssize_t _cnt;
unsigned char *_ptr;
unsigned char *_base;
unsigned char _flag;
unsigned char _file;
unsigned __orientation:2;
unsigned __ionolock:1;
unsigned __filler:5;
};
# 39 "/usr/include/iso/stdio_iso.h" 2 3 4
# 59 "/usr/include/iso/stdio_iso.h" 3 4
typedef long long __longlong_t;
# 75 "/usr/include/iso/stdio_iso.h" 3 4
typedef __FILE FILE;
# 88 "/usr/include/iso/stdio_iso.h" 3 4
typedef long fpos_t;
# 147 "/usr/include/iso/stdio_iso.h" 3 4
extern __FILE __iob[20];
# 164 "/usr/include/iso/stdio_iso.h" 3 4
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int sscanf(const char *, const char *, ...);
extern int vfprintf(FILE *, const char *, __va_list);
extern int vprintf(const char *, __va_list);
extern int vsprintf(char *, const char *, __va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern int getc(FILE *);
extern int putc(int, FILE *);
extern int getchar(void);
extern int putchar(int);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void clearerr(FILE *);
extern int feof(FILE *);
extern int ferror(FILE *);
extern void perror(const char *);
extern int __filbuf(FILE *);
extern int __flsbuf(int, FILE *);
# 37 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 2 3 4
# 123 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
typedef __longlong_t fpos64_t;
# 151 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char _sibuf[], _sobuf[];
# 193 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern unsigned char *_bufendtab[];
extern FILE *_lastbuf;
# 229 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
extern int snprintf(char *, size_t, const char *, ...);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
# 250 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fdopen(int, const char *);
extern char *ctermid(char *);
extern int fileno(FILE *);
# 276 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *popen(const char *, const char *);
extern char *cuserid(char *);
extern char *tempnam(const char *, const char *);
extern int getopt(int, char *const *, const char *);
extern int getsubopt(char **, char *const *, char **);
extern char *optarg;
extern int optind, opterr, optopt;
extern int getw(FILE *);
extern int putw(int, FILE *);
extern int pclose(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
# 305 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/stdio.h" 3 4
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern FILE *tmpfile64(void);
extern int fgetpos64(FILE *, fpos64_t *);
extern int fsetpos64(FILE *, const fpos64_t *);
extern int fseeko64(FILE *, off64_t, int);
extern off64_t ftello64(FILE *);
# 13 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_math.h" 1
# 22 "../gsl/gsl_math.h"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 1 3 4
# 23 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
#pragma ident "@(#)math.h 2.10 99/07/29 SMI"
# 1 "/usr/include/iso/math_iso.h" 1 3 4
#pragma ident "@(#)math_iso.h 1.1 99/07/30 SMI"
# 20 "/usr/include/iso/math_iso.h" 3 4
typedef union _h_val {
unsigned long _i[sizeof(double) / sizeof(unsigned long)];
double _d;
} _h_val;
extern const _h_val __huge_val;
# 37 "/usr/include/iso/math_iso.h" 3 4
extern double acos (double);
extern double asin (double);
extern double atan (double);
extern double atan2 (double, double);
extern double cos (double);
extern double sin (double);
extern double tan (double);
extern double cosh (double);
extern double sinh (double);
extern double tanh (double);
extern double exp (double);
extern double frexp (double, int *);
extern double ldexp (double, int);
extern double log (double);
extern double log10 (double);
extern double modf (double, double *);
extern double pow (double, double);
extern double sqrt (double);
extern double ceil (double);
extern double fabs (double);
extern double floor (double);
extern double fmod (double, double);
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 89 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int signgam;
enum version {libm_ieee = -1, c_issue_4, ansi_1, strict_ansi};
extern const enum version _lib_version;
struct exception {
int type;
char *name;
double arg1;
double arg2;
double retval;
};
# 145 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double erf (double);
extern double erfc (double);
extern double gamma (double);
extern double hypot (double, double);
extern int isnan (double);
extern double j0 (double);
extern double j1 (double);
extern double jn (int, double);
extern double lgamma (double);
extern double y0 (double);
extern double y1 (double);
extern double yn (int, double);
# 172 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double acosh (double);
extern double asinh (double);
extern double atanh (double);
extern double cbrt (double);
extern double logb (double);
extern double nextafter (double, double);
extern double remainder (double, double);
extern double scalb (double, double);
# 192 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern double expm1 (double);
extern int ilogb (double);
extern double log1p (double);
extern double rint (double);
# 208 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern int matherr (struct exception *);
extern double significand (double);
extern double copysign (double, double);
extern double scalbn (double, int);
# 243 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 3 4
extern float modff (float, float *);
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 1 3 4
# 20 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
#pragma ident "@(#)floatingpoint.h 2.5 99/06/22 SMI"
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 1 3 4
# 17 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
#pragma ident "@(#)ieeefp.h 2.8 99/10/29"
# 27 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_direction_type {
fp_nearest = 0,
fp_tozero = 1,
fp_positive = 2,
fp_negative = 3
};
enum fp_precision_type {
fp_extended = 0,
fp_single = 1,
fp_double = 2,
fp_precision_3 = 3
};
enum fp_exception_type {
fp_inexact = 0,
fp_division = 1,
fp_underflow = 2,
fp_overflow = 3,
fp_invalid = 4
};
enum fp_trap_enable_type {
fp_trap_inexact = 0,
fp_trap_division = 1,
fp_trap_underflow = 2,
fp_trap_overflow = 3,
fp_trap_invalid = 4
};
# 133 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/sys/ieeefp.h" 3 4
enum fp_class_type {
fp_zero = 0,
fp_subnormal = 1,
fp_normal = 2,
fp_infinity = 3,
fp_quiet = 4,
fp_signaling = 5
};
# 26 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 2 3 4
# 62 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef int sigfpe_code_type;
typedef void (*sigfpe_handler_type)();
extern sigfpe_handler_type sigfpe (sigfpe_code_type, sigfpe_handler_type);
typedef float single;
typedef unsigned extended[3];
typedef long double quadruple;
typedef unsigned fp_exception_field_type;
# 94 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/floatingpoint.h" 3 4
typedef char decimal_string[512];
typedef struct {
enum fp_class_type fpclass;
int sign;
int exponent;
decimal_string ds;
int more;
int ndigits;
} decimal_record;
enum decimal_form {
fixed_form,
floating_form
};
typedef struct {
enum fp_direction_type rd;
enum decimal_form df;
int ndigits;
} decimal_mode;
enum decimal_string_form {
invalid_form,
whitespace_form,
fixed_int_form,
fixed_intdot_form,
fixed_dotfrac_form,
fixed_intdotfrac_form,
floating_int_form,
floating_intdot_form,
floating_dotfrac_form,
floating_intdotfrac_form,
inf_form,
infinity_form,
nan_form,
nanstring_form
};
extern void single_to_decimal (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void double_to_decimal (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void extended_to_decimal (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void quadruple_to_decimal (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_single (single *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_double (double *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_extended (extended *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void decimal_to_quadruple (quadruple *, decimal_mode *, decimal_record *, fp_exception_field_type *);
extern void string_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **);
extern void func_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, int (*)(void), int *, int (*)(int));
extern void file_to_decimal (char **, int, int, decimal_record *, enum decimal_string_form *, char **, FILE *, int *);
extern char *seconvert (single *, int, int *, int *, char *);
extern char *sfconvert (single *, int, int *, int *, char *);
extern char *sgconvert (single *, int, int, char *);
extern char *econvert (double, int, int *, int *, char *);
extern char *fconvert (double, int, int *, int *, char *);
extern char *gconvert (double, int, int, char *);
extern char *qeconvert (quadruple *, int, int *, int *, char *);
extern char *qfconvert (quadruple *, int, int *, int *, char *);
extern char *qgconvert (quadruple *, int, int, char *);
extern char *ecvt (double, int, int *, int *);
extern char *fcvt (double, int, int *, int *);
extern char *gcvt (double, int, char *);
extern double atof (const char *);
extern double strtod (const char *, char **);
# 251 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/math.h" 2 3 4
# 23 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_sys.h" 1
# 33 "../gsl/gsl_sys.h"
double gsl_log1p (const double x);
double gsl_expm1 (const double x);
double gsl_hypot (const double x, const double y);
double gsl_acosh (const double x);
double gsl_asinh (const double x);
double gsl_atanh (const double x);
int gsl_isnan (const double x);
int gsl_isinf (const double x);
int gsl_finite (const double x);
double gsl_nan (void);
double gsl_posinf (void);
double gsl_neginf (void);
double gsl_fdiv (const double x, const double y);
double gsl_coerce_double (const double x);
float gsl_coerce_float (const float x);
long double gsl_coerce_long_double (const long double x);
double gsl_ldexp(const double x, const int e);
double gsl_frexp(const double x, int * e);
int gsl_fcmp (const double x1, const double x2, const double epsilon);
# 24 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_machine.h" 1
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 1 3 4
# 11 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 3 4
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 1 3 4
# 25 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
#pragma ident "@(#)limits.h 1.51 99/10/08 SMI"
# 1 "/usr/include/iso/limits_iso.h" 1 3 4
# 28 "/usr/include/iso/limits_iso.h" 3 4
#pragma ident "@(#)limits_iso.h 1.1 99/08/09 SMI"
# 30 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 41 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 3 4
# 1 "/usr/include/sys/int_limits.h" 1 3 4
# 9 "/usr/include/sys/int_limits.h" 3 4
#pragma ident "@(#)int_limits.h 1.6 99/08/06 SMI"
# 42 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/syslimits.h" 2 3 4
# 12 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/limits.h" 2 3 4
# 6 "../gsl/gsl_machine.h" 2
# 1 "/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.2.2/include/float.h" 1 3 4
# 7 "../gsl/gsl_machine.h" 2
# 25 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_precision.h" 1
# 24 "../gsl/gsl_precision.h"
# 1 "../gsl/gsl_types.h" 1
# 25 "../gsl/gsl_precision.h" 2
# 36 "../gsl/gsl_precision.h"
typedef unsigned int gsl_prec_t;
# 56 "../gsl/gsl_precision.h"
extern const double gsl_prec_eps[];
extern const double gsl_prec_sqrt_eps[];
extern const double gsl_prec_root3_eps[];
extern const double gsl_prec_root4_eps[];
extern const double gsl_prec_root5_eps[];
extern const double gsl_prec_root6_eps[];
# 26 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_nan.h" 1
# 27 "../gsl/gsl_math.h" 2
# 1 "../gsl/gsl_pow_int.h" 1
# 33 "../gsl/gsl_pow_int.h"
# 54 "../gsl/gsl_pow_int.h"
double gsl_pow_2(const double x);
double gsl_pow_3(const double x);
double gsl_pow_4(const double x);
double gsl_pow_5(const double x);
double gsl_pow_6(const double x);
double gsl_pow_7(const double x);
double gsl_pow_8(const double x);
double gsl_pow_9(const double x);
double gsl_pow_int(double x, int n);
# 28 "../gsl/gsl_math.h" 2
# 108 "../gsl/gsl_math.h"
# 126 "../gsl/gsl_math.h"
double gsl_max (double a, double b);
double gsl_min (double a, double b);
# 185 "../gsl/gsl_math.h"
struct gsl_function_struct
{
double (* function) (double x, void * params);
void * params;
};
typedef struct gsl_function_struct gsl_function ;
struct gsl_function_fdf_struct
{
double (* f) (double x, void * params);
double (* df) (double x, void * params);
void (* fdf) (double x, void * params, double * f, double * df);
void * params;
};
typedef struct gsl_function_fdf_struct gsl_function_fdf ;
# 214 "../gsl/gsl_math.h"
struct gsl_function_vec_struct
{
int (* function) (double x, double y[], void * params);
void * params;
};
typedef struct gsl_function_vec_struct gsl_function_vec ;
# 14 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_vector.h" 1
# 1 "../gsl/gsl_vector_complex_long_double.h" 1
# 25 "../gsl/gsl_vector_complex_long_double.h"
# 1 "../gsl/gsl_errno.h" 1
# 24 "../gsl/gsl_errno.h"
# 1 "/usr/include/errno.h" 1 3 4
# 17 "/usr/include/errno.h" 3 4
#pragma ident "@(#)errno.h 1.16 99/07/26 SMI"
# 1 "/usr/include/sys/errno.h" 1 3 4
# 11 "/usr/include/sys/errno.h" 3 4
#pragma ident "@(#)errno.h 1.20 00/02/14 SMI"
# 24 "/usr/include/errno.h" 2 3 4
# 41 "/usr/include/errno.h" 3 4
extern int errno;
# 25 "../gsl/gsl_errno.h" 2
# 37 "../gsl/gsl_errno.h"
enum {
GSL_SUCCESS = 0,
GSL_FAILURE = -1,
GSL_CONTINUE = -2,
GSL_EDOM = 1,
GSL_ERANGE = 2,
GSL_EFAULT = 3,
GSL_EINVAL = 4,
GSL_EFAILED = 5,
GSL_EFACTOR = 6,
GSL_ESANITY = 7,
GSL_ENOMEM = 8,
GSL_EBADFUNC = 9,
GSL_ERUNAWAY = 10,
GSL_EMAXITER = 11,
GSL_EZERODIV = 12,
GSL_EBADTOL = 13,
GSL_ETOL = 14,
GSL_EUNDRFLW = 15,
GSL_EOVRFLW = 16,
GSL_ELOSS = 17,
GSL_EROUND = 18,
GSL_EBADLEN = 19,
GSL_ENOTSQR = 20,
GSL_ESING = 21,
GSL_EDIVERGE = 22,
GSL_EUNSUP = 23,
GSL_EUNIMPL = 24,
GSL_ECACHE = 25,
GSL_ETABLE = 26,
GSL_ENOPROG = 27,
GSL_ENOPROGJ = 28,
GSL_ETOLF = 29,
GSL_ETOLX = 30,
GSL_ETOLG = 31,
GSL_EOF = 32
} ;
void gsl_error (const char * reason, const char * file, int line,
int gsl_errno);
void gsl_warning (const char * reason, const char * file, int line,
int gsl_errno) ;
void gsl_stream_printf (const char *label, const char *file,
int line, const char *reason);
const char * gsl_strerror (const int gsl_errno);
typedef void gsl_error_handler_t (const char * reason, const char * file,
int line, int gsl_errno);
typedef void gsl_stream_handler_t (const char * label, const char * file,
int line, const char * reason);
gsl_error_handler_t *
gsl_set_error_handler (gsl_error_handler_t * new_handler);
gsl_error_handler_t *
gsl_set_error_handler_off (void);
gsl_stream_handler_t *
gsl_set_stream_handler (gsl_stream_handler_t * new_handler);
FILE * gsl_set_stream (FILE * new_stream);
# 157 "../gsl/gsl_errno.h"
extern int gsl_warnings_off ;
# 181 "../gsl/gsl_errno.h"
# 26 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_complex.h" 1
# 33 "../gsl/gsl_complex.h"
typedef double * gsl_complex_packed ;
typedef float * gsl_complex_packed_float ;
typedef long double * gsl_complex_packed_long_double ;
typedef const double * gsl_const_complex_packed ;
typedef const float * gsl_const_complex_packed_float ;
typedef const long double * gsl_const_complex_packed_long_double ;
typedef double * gsl_complex_packed_array ;
typedef float * gsl_complex_packed_array_float ;
typedef long double * gsl_complex_packed_array_long_double ;
typedef const double * gsl_const_complex_packed_array ;
typedef const float * gsl_const_complex_packed_array_float ;
typedef const long double * gsl_const_complex_packed_array_long_double ;
typedef double * gsl_complex_packed_ptr ;
typedef float * gsl_complex_packed_float_ptr ;
typedef long double * gsl_complex_packed_long_double_ptr ;
typedef const double * gsl_const_complex_packed_ptr ;
typedef const float * gsl_const_complex_packed_float_ptr ;
typedef const long double * gsl_const_complex_packed_long_double_ptr ;
typedef struct
{
long double dat[2];
}
gsl_complex_long_double;
typedef struct
{
double dat[2];
}
gsl_complex;
typedef struct
{
float dat[2];
}
gsl_complex_float;
# 101 "../gsl/gsl_complex.h"
# 27 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_long_double.h" 1
# 26 "../gsl/gsl_vector_long_double.h"
# 1 "../gsl/gsl_block_long_double.h" 1
# 36 "../gsl/gsl_block_long_double.h"
struct gsl_block_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_long_double_struct gsl_block_long_double;
gsl_block_long_double *gsl_block_long_double_alloc (const size_t n);
gsl_block_long_double *gsl_block_long_double_calloc (const size_t n);
void gsl_block_long_double_free (gsl_block_long_double * b);
int gsl_block_long_double_fread (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fwrite (FILE * stream, const gsl_block_long_double * b);
int gsl_block_long_double_fscanf (FILE * stream, gsl_block_long_double * b);
int gsl_block_long_double_fprintf (FILE * stream, const gsl_block_long_double * b, const char *format);
int gsl_block_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_double_size (const gsl_block_long_double * b);
long double * gsl_block_long_double_data (const gsl_block_long_double * b);
# 27 "../gsl/gsl_vector_long_double.h" 2
# 38 "../gsl/gsl_vector_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_long_double *block;
int owner;
}
gsl_vector_long_double;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_view;
typedef _gsl_vector_long_double_view gsl_vector_long_double_view;
typedef struct
{
gsl_vector_long_double vector;
} _gsl_vector_long_double_const_view;
typedef const _gsl_vector_long_double_const_view gsl_vector_long_double_const_view;
gsl_vector_long_double *gsl_vector_long_double_alloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_calloc (const size_t n);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_block (gsl_block_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long_double *gsl_vector_long_double_alloc_from_vector (gsl_vector_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_double_free (gsl_vector_long_double * v);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array (long double *v, size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array (const long double *v, size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector (gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_view
gsl_vector_long_double_subvector_with_stride (gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector (const gsl_vector_long_double *v,
size_t i,
size_t n);
_gsl_vector_long_double_const_view
gsl_vector_long_double_const_subvector_with_stride (const gsl_vector_long_double *v,
size_t i,
size_t stride,
size_t n);
long double gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x);
long double *gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i);
const long double *gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i);
void gsl_vector_long_double_set_zero (gsl_vector_long_double * v);
void gsl_vector_long_double_set_all (gsl_vector_long_double * v, long double x);
int gsl_vector_long_double_set_basis (gsl_vector_long_double * v, size_t i);
int gsl_vector_long_double_fread (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fwrite (FILE * stream, const gsl_vector_long_double * v);
int gsl_vector_long_double_fscanf (FILE * stream, gsl_vector_long_double * v);
int gsl_vector_long_double_fprintf (FILE * stream, const gsl_vector_long_double * v,
const char *format);
int gsl_vector_long_double_memcpy (gsl_vector_long_double * dest, const gsl_vector_long_double * src);
int gsl_vector_long_double_reverse (gsl_vector_long_double * v);
int gsl_vector_long_double_swap (gsl_vector_long_double * v, gsl_vector_long_double * w);
int gsl_vector_long_double_swap_elements (gsl_vector_long_double * v, const size_t i, const size_t j);
long double gsl_vector_long_double_max (const gsl_vector_long_double * v);
long double gsl_vector_long_double_min (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax (const gsl_vector_long_double * v, long double * min_out, long double * max_out);
size_t gsl_vector_long_double_max_index (const gsl_vector_long_double * v);
size_t gsl_vector_long_double_min_index (const gsl_vector_long_double * v);
void gsl_vector_long_double_minmax_index (const gsl_vector_long_double * v, size_t * imin, size_t * imax);
int gsl_vector_long_double_add (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_sub (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_mul (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_div (gsl_vector_long_double * a, const gsl_vector_long_double * b);
int gsl_vector_long_double_scale (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_add_constant (gsl_vector_long_double * a, const double x);
int gsl_vector_long_double_isnull (const gsl_vector_long_double * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_long_double.h"
# 28 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_vector_complex.h" 1
# 29 "../gsl/gsl_vector_complex_long_double.h" 2
# 1 "../gsl/gsl_block_complex_long_double.h" 1
# 36 "../gsl/gsl_block_complex_long_double.h"
struct gsl_block_complex_long_double_struct
{
size_t size;
long double *data;
};
typedef struct gsl_block_complex_long_double_struct gsl_block_complex_long_double;
gsl_block_complex_long_double *gsl_block_complex_long_double_alloc (const size_t n);
gsl_block_complex_long_double *gsl_block_complex_long_double_calloc (const size_t n);
void gsl_block_complex_long_double_free (gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fread (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fwrite (FILE * stream, const gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fscanf (FILE * stream, gsl_block_complex_long_double * b);
int gsl_block_complex_long_double_fprintf (FILE * stream, const gsl_block_complex_long_double * b, const char *format);
int gsl_block_complex_long_double_raw_fread (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fwrite (FILE * stream, const long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fscanf (FILE * stream, long double * b, const size_t n, const size_t stride);
int gsl_block_complex_long_double_raw_fprintf (FILE * stream, const long double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_long_double_size (const gsl_block_complex_long_double * b);
long double * gsl_block_complex_long_double_data (const gsl_block_complex_long_double * b);
# 30 "../gsl/gsl_vector_complex_long_double.h" 2
# 41 "../gsl/gsl_vector_complex_long_double.h"
typedef struct
{
size_t size;
size_t stride;
long double *data;
gsl_block_complex_long_double *block;
int owner;
} gsl_vector_complex_long_double;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_view;
typedef _gsl_vector_complex_long_double_view gsl_vector_complex_long_double_view;
typedef struct
{
gsl_vector_complex_long_double vector;
} _gsl_vector_complex_long_double_const_view;
typedef const _gsl_vector_complex_long_double_const_view gsl_vector_complex_long_double_const_view;
gsl_vector_complex_long_double *gsl_vector_complex_long_double_alloc (const size_t n);
gsl_vector_complex_long_double *gsl_vector_complex_long_double_calloc (const size_t n);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_block (gsl_block_complex_long_double * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_long_double *
gsl_vector_complex_long_double_alloc_from_vector (gsl_vector_complex_long_double * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_long_double_free (gsl_vector_complex_long_double * v);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array (long double *base,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_view_array_with_stride (long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array (const long double *base,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_view_array_with_stride (const long double *base,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector (gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_view
gsl_vector_complex_long_double_subvector_with_stride (gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector (const gsl_vector_complex_long_double *base,
size_t i,
size_t n);
_gsl_vector_complex_long_double_const_view
gsl_vector_complex_long_double_const_subvector_with_stride (const gsl_vector_complex_long_double *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_real (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_view
gsl_vector_complex_long_double_imag (gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_real (const gsl_vector_complex_long_double *v);
_gsl_vector_long_double_const_view
gsl_vector_complex_long_double_const_imag (const gsl_vector_complex_long_double *v);
gsl_complex_long_double
gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, const size_t i,
gsl_complex_long_double z);
gsl_complex_long_double
*gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, const size_t i);
const gsl_complex_long_double
*gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, const size_t i);
void gsl_vector_complex_long_double_set_zero (gsl_vector_complex_long_double * v);
void gsl_vector_complex_long_double_set_all (gsl_vector_complex_long_double * v,
gsl_complex_long_double z);
int gsl_vector_complex_long_double_set_basis (gsl_vector_complex_long_double * v, size_t i);
int gsl_vector_complex_long_double_fread (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fwrite (FILE * stream,
const gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fscanf (FILE * stream,
gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_fprintf (FILE * stream,
const gsl_vector_complex_long_double * v,
const char *format);
int gsl_vector_complex_long_double_memcpy (gsl_vector_complex_long_double * dest, const gsl_vector_complex_long_double * src);
int gsl_vector_complex_long_double_reverse (gsl_vector_complex_long_double * v);
int gsl_vector_complex_long_double_swap (gsl_vector_complex_long_double * v, gsl_vector_complex_long_double * w);
int gsl_vector_complex_long_double_swap_elements (gsl_vector_complex_long_double * v, const size_t i, const size_t j);
int gsl_vector_complex_long_double_isnull (const gsl_vector_complex_long_double * v);
extern int gsl_check_range;
# 244 "../gsl/gsl_vector_complex_long_double.h"
# 5 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_double.h" 1
# 27 "../gsl/gsl_vector_complex_double.h"
# 1 "../gsl/gsl_vector_double.h" 1
# 26 "../gsl/gsl_vector_double.h"
# 1 "../gsl/gsl_block_double.h" 1
# 36 "../gsl/gsl_block_double.h"
struct gsl_block_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_struct gsl_block;
gsl_block *gsl_block_alloc (const size_t n);
gsl_block *gsl_block_calloc (const size_t n);
void gsl_block_free (gsl_block * b);
int gsl_block_fread (FILE * stream, gsl_block * b);
int gsl_block_fwrite (FILE * stream, const gsl_block * b);
int gsl_block_fscanf (FILE * stream, gsl_block * b);
int gsl_block_fprintf (FILE * stream, const gsl_block * b, const char *format);
int gsl_block_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_size (const gsl_block * b);
double * gsl_block_data (const gsl_block * b);
# 27 "../gsl/gsl_vector_double.h" 2
# 38 "../gsl/gsl_vector_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block *block;
int owner;
}
gsl_vector;
typedef struct
{
gsl_vector vector;
} _gsl_vector_view;
typedef _gsl_vector_view gsl_vector_view;
typedef struct
{
gsl_vector vector;
} _gsl_vector_const_view;
typedef const _gsl_vector_const_view gsl_vector_const_view;
gsl_vector *gsl_vector_alloc (const size_t n);
gsl_vector *gsl_vector_calloc (const size_t n);
gsl_vector *gsl_vector_alloc_from_block (gsl_block * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector *gsl_vector_alloc_from_vector (gsl_vector * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_free (gsl_vector * v);
_gsl_vector_view
gsl_vector_view_array (double *v, size_t n);
_gsl_vector_view
gsl_vector_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array (const double *v, size_t n);
_gsl_vector_const_view
gsl_vector_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_subvector (gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_view
gsl_vector_subvector_with_stride (gsl_vector *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector (const gsl_vector *v,
size_t i,
size_t n);
_gsl_vector_const_view
gsl_vector_const_subvector_with_stride (const gsl_vector *v,
size_t i,
size_t stride,
size_t n);
double gsl_vector_get (const gsl_vector * v, const size_t i);
void gsl_vector_set (gsl_vector * v, const size_t i, double x);
double *gsl_vector_ptr (gsl_vector * v, const size_t i);
const double *gsl_vector_const_ptr (const gsl_vector * v, const size_t i);
void gsl_vector_set_zero (gsl_vector * v);
void gsl_vector_set_all (gsl_vector * v, double x);
int gsl_vector_set_basis (gsl_vector * v, size_t i);
int gsl_vector_fread (FILE * stream, gsl_vector * v);
int gsl_vector_fwrite (FILE * stream, const gsl_vector * v);
int gsl_vector_fscanf (FILE * stream, gsl_vector * v);
int gsl_vector_fprintf (FILE * stream, const gsl_vector * v,
const char *format);
int gsl_vector_memcpy (gsl_vector * dest, const gsl_vector * src);
int gsl_vector_reverse (gsl_vector * v);
int gsl_vector_swap (gsl_vector * v, gsl_vector * w);
int gsl_vector_swap_elements (gsl_vector * v, const size_t i, const size_t j);
double gsl_vector_max (const gsl_vector * v);
double gsl_vector_min (const gsl_vector * v);
void gsl_vector_minmax (const gsl_vector * v, double * min_out, double * max_out);
size_t gsl_vector_max_index (const gsl_vector * v);
size_t gsl_vector_min_index (const gsl_vector * v);
void gsl_vector_minmax_index (const gsl_vector * v, size_t * imin, size_t * imax);
int gsl_vector_add (gsl_vector * a, const gsl_vector * b);
int gsl_vector_sub (gsl_vector * a, const gsl_vector * b);
int gsl_vector_mul (gsl_vector * a, const gsl_vector * b);
int gsl_vector_div (gsl_vector * a, const gsl_vector * b);
int gsl_vector_scale (gsl_vector * a, const double x);
int gsl_vector_add_constant (gsl_vector * a, const double x);
int gsl_vector_isnull (const gsl_vector * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_double.h"
# 28 "../gsl/gsl_vector_complex_double.h" 2
# 1 "../gsl/gsl_block_complex_double.h" 1
# 36 "../gsl/gsl_block_complex_double.h"
struct gsl_block_complex_struct
{
size_t size;
double *data;
};
typedef struct gsl_block_complex_struct gsl_block_complex;
gsl_block_complex *gsl_block_complex_alloc (const size_t n);
gsl_block_complex *gsl_block_complex_calloc (const size_t n);
void gsl_block_complex_free (gsl_block_complex * b);
int gsl_block_complex_fread (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fwrite (FILE * stream, const gsl_block_complex * b);
int gsl_block_complex_fscanf (FILE * stream, gsl_block_complex * b);
int gsl_block_complex_fprintf (FILE * stream, const gsl_block_complex * b, const char *format);
int gsl_block_complex_raw_fread (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fwrite (FILE * stream, const double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fscanf (FILE * stream, double * b, const size_t n, const size_t stride);
int gsl_block_complex_raw_fprintf (FILE * stream, const double * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_size (const gsl_block_complex * b);
double * gsl_block_complex_data (const gsl_block_complex * b);
# 30 "../gsl/gsl_vector_complex_double.h" 2
# 41 "../gsl/gsl_vector_complex_double.h"
typedef struct
{
size_t size;
size_t stride;
double *data;
gsl_block_complex *block;
int owner;
} gsl_vector_complex;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_view;
typedef _gsl_vector_complex_view gsl_vector_complex_view;
typedef struct
{
gsl_vector_complex vector;
} _gsl_vector_complex_const_view;
typedef const _gsl_vector_complex_const_view gsl_vector_complex_const_view;
gsl_vector_complex *gsl_vector_complex_alloc (const size_t n);
gsl_vector_complex *gsl_vector_complex_calloc (const size_t n);
gsl_vector_complex *
gsl_vector_complex_alloc_from_block (gsl_block_complex * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex *
gsl_vector_complex_alloc_from_vector (gsl_vector_complex * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_free (gsl_vector_complex * v);
_gsl_vector_complex_view
gsl_vector_complex_view_array (double *base,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_view_array_with_stride (double *base,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array (const double *base,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_view_array_with_stride (const double *base,
size_t stride,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector (gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_view
gsl_vector_complex_subvector_with_stride (gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector (const gsl_vector_complex *base,
size_t i,
size_t n);
_gsl_vector_complex_const_view
gsl_vector_complex_const_subvector_with_stride (const gsl_vector_complex *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_view
gsl_vector_complex_real (gsl_vector_complex *v);
_gsl_vector_view
gsl_vector_complex_imag (gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_real (const gsl_vector_complex *v);
_gsl_vector_const_view
gsl_vector_complex_const_imag (const gsl_vector_complex *v);
gsl_complex
gsl_vector_complex_get (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set (gsl_vector_complex * v, const size_t i,
gsl_complex z);
gsl_complex
*gsl_vector_complex_ptr (gsl_vector_complex * v, const size_t i);
const gsl_complex
*gsl_vector_complex_const_ptr (const gsl_vector_complex * v, const size_t i);
void gsl_vector_complex_set_zero (gsl_vector_complex * v);
void gsl_vector_complex_set_all (gsl_vector_complex * v,
gsl_complex z);
int gsl_vector_complex_set_basis (gsl_vector_complex * v, size_t i);
int gsl_vector_complex_fread (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fwrite (FILE * stream,
const gsl_vector_complex * v);
int gsl_vector_complex_fscanf (FILE * stream,
gsl_vector_complex * v);
int gsl_vector_complex_fprintf (FILE * stream,
const gsl_vector_complex * v,
const char *format);
int gsl_vector_complex_memcpy (gsl_vector_complex * dest, const gsl_vector_complex * src);
int gsl_vector_complex_reverse (gsl_vector_complex * v);
int gsl_vector_complex_swap (gsl_vector_complex * v, gsl_vector_complex * w);
int gsl_vector_complex_swap_elements (gsl_vector_complex * v, const size_t i, const size_t j);
int gsl_vector_complex_isnull (const gsl_vector_complex * v);
extern int gsl_check_range;
# 244 "../gsl/gsl_vector_complex_double.h"
# 6 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_complex_float.h" 1
# 27 "../gsl/gsl_vector_complex_float.h"
# 1 "../gsl/gsl_vector_float.h" 1
# 26 "../gsl/gsl_vector_float.h"
# 1 "../gsl/gsl_block_float.h" 1
# 36 "../gsl/gsl_block_float.h"
struct gsl_block_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_float_struct gsl_block_float;
gsl_block_float *gsl_block_float_alloc (const size_t n);
gsl_block_float *gsl_block_float_calloc (const size_t n);
void gsl_block_float_free (gsl_block_float * b);
int gsl_block_float_fread (FILE * stream, gsl_block_float * b);
int gsl_block_float_fwrite (FILE * stream, const gsl_block_float * b);
int gsl_block_float_fscanf (FILE * stream, gsl_block_float * b);
int gsl_block_float_fprintf (FILE * stream, const gsl_block_float * b, const char *format);
int gsl_block_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_float_size (const gsl_block_float * b);
float * gsl_block_float_data (const gsl_block_float * b);
# 27 "../gsl/gsl_vector_float.h" 2
# 38 "../gsl/gsl_vector_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_float *block;
int owner;
}
gsl_vector_float;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_view;
typedef _gsl_vector_float_view gsl_vector_float_view;
typedef struct
{
gsl_vector_float vector;
} _gsl_vector_float_const_view;
typedef const _gsl_vector_float_const_view gsl_vector_float_const_view;
gsl_vector_float *gsl_vector_float_alloc (const size_t n);
gsl_vector_float *gsl_vector_float_calloc (const size_t n);
gsl_vector_float *gsl_vector_float_alloc_from_block (gsl_block_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_float *gsl_vector_float_alloc_from_vector (gsl_vector_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_float_free (gsl_vector_float * v);
_gsl_vector_float_view
gsl_vector_float_view_array (float *v, size_t n);
_gsl_vector_float_view
gsl_vector_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array (const float *v, size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector (gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_view
gsl_vector_float_subvector_with_stride (gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector (const gsl_vector_float *v,
size_t i,
size_t n);
_gsl_vector_float_const_view
gsl_vector_float_const_subvector_with_stride (const gsl_vector_float *v,
size_t i,
size_t stride,
size_t n);
float gsl_vector_float_get (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x);
float *gsl_vector_float_ptr (gsl_vector_float * v, const size_t i);
const float *gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i);
void gsl_vector_float_set_zero (gsl_vector_float * v);
void gsl_vector_float_set_all (gsl_vector_float * v, float x);
int gsl_vector_float_set_basis (gsl_vector_float * v, size_t i);
int gsl_vector_float_fread (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fwrite (FILE * stream, const gsl_vector_float * v);
int gsl_vector_float_fscanf (FILE * stream, gsl_vector_float * v);
int gsl_vector_float_fprintf (FILE * stream, const gsl_vector_float * v,
const char *format);
int gsl_vector_float_memcpy (gsl_vector_float * dest, const gsl_vector_float * src);
int gsl_vector_float_reverse (gsl_vector_float * v);
int gsl_vector_float_swap (gsl_vector_float * v, gsl_vector_float * w);
int gsl_vector_float_swap_elements (gsl_vector_float * v, const size_t i, const size_t j);
float gsl_vector_float_max (const gsl_vector_float * v);
float gsl_vector_float_min (const gsl_vector_float * v);
void gsl_vector_float_minmax (const gsl_vector_float * v, float * min_out, float * max_out);
size_t gsl_vector_float_max_index (const gsl_vector_float * v);
size_t gsl_vector_float_min_index (const gsl_vector_float * v);
void gsl_vector_float_minmax_index (const gsl_vector_float * v, size_t * imin, size_t * imax);
int gsl_vector_float_add (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_sub (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_mul (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_div (gsl_vector_float * a, const gsl_vector_float * b);
int gsl_vector_float_scale (gsl_vector_float * a, const double x);
int gsl_vector_float_add_constant (gsl_vector_float * a, const double x);
int gsl_vector_float_isnull (const gsl_vector_float * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_float.h"
# 28 "../gsl/gsl_vector_complex_float.h" 2
# 1 "../gsl/gsl_block_complex_float.h" 1
# 36 "../gsl/gsl_block_complex_float.h"
struct gsl_block_complex_float_struct
{
size_t size;
float *data;
};
typedef struct gsl_block_complex_float_struct gsl_block_complex_float;
gsl_block_complex_float *gsl_block_complex_float_alloc (const size_t n);
gsl_block_complex_float *gsl_block_complex_float_calloc (const size_t n);
void gsl_block_complex_float_free (gsl_block_complex_float * b);
int gsl_block_complex_float_fread (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fwrite (FILE * stream, const gsl_block_complex_float * b);
int gsl_block_complex_float_fscanf (FILE * stream, gsl_block_complex_float * b);
int gsl_block_complex_float_fprintf (FILE * stream, const gsl_block_complex_float * b, const char *format);
int gsl_block_complex_float_raw_fread (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fwrite (FILE * stream, const float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fscanf (FILE * stream, float * b, const size_t n, const size_t stride);
int gsl_block_complex_float_raw_fprintf (FILE * stream, const float * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_complex_float_size (const gsl_block_complex_float * b);
float * gsl_block_complex_float_data (const gsl_block_complex_float * b);
# 30 "../gsl/gsl_vector_complex_float.h" 2
# 41 "../gsl/gsl_vector_complex_float.h"
typedef struct
{
size_t size;
size_t stride;
float *data;
gsl_block_complex_float *block;
int owner;
} gsl_vector_complex_float;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_view;
typedef _gsl_vector_complex_float_view gsl_vector_complex_float_view;
typedef struct
{
gsl_vector_complex_float vector;
} _gsl_vector_complex_float_const_view;
typedef const _gsl_vector_complex_float_const_view gsl_vector_complex_float_const_view;
gsl_vector_complex_float *gsl_vector_complex_float_alloc (const size_t n);
gsl_vector_complex_float *gsl_vector_complex_float_calloc (const size_t n);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_block (gsl_block_complex_float * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_complex_float *
gsl_vector_complex_float_alloc_from_vector (gsl_vector_complex_float * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_complex_float_free (gsl_vector_complex_float * v);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array (float *base,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_view_array_with_stride (float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array (const float *base,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_view_array_with_stride (const float *base,
size_t stride,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector (gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_view
gsl_vector_complex_float_subvector_with_stride (gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector (const gsl_vector_complex_float *base,
size_t i,
size_t n);
_gsl_vector_complex_float_const_view
gsl_vector_complex_float_const_subvector_with_stride (const gsl_vector_complex_float *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_float_view
gsl_vector_complex_float_real (gsl_vector_complex_float *v);
_gsl_vector_float_view
gsl_vector_complex_float_imag (gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_real (const gsl_vector_complex_float *v);
_gsl_vector_float_const_view
gsl_vector_complex_float_const_imag (const gsl_vector_complex_float *v);
gsl_complex_float
gsl_vector_complex_float_get (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set (gsl_vector_complex_float * v, const size_t i,
gsl_complex_float z);
gsl_complex_float
*gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, const size_t i);
const gsl_complex_float
*gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, const size_t i);
void gsl_vector_complex_float_set_zero (gsl_vector_complex_float * v);
void gsl_vector_complex_float_set_all (gsl_vector_complex_float * v,
gsl_complex_float z);
int gsl_vector_complex_float_set_basis (gsl_vector_complex_float * v, size_t i);
int gsl_vector_complex_float_fread (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fwrite (FILE * stream,
const gsl_vector_complex_float * v);
int gsl_vector_complex_float_fscanf (FILE * stream,
gsl_vector_complex_float * v);
int gsl_vector_complex_float_fprintf (FILE * stream,
const gsl_vector_complex_float * v,
const char *format);
int gsl_vector_complex_float_memcpy (gsl_vector_complex_float * dest, const gsl_vector_complex_float * src);
int gsl_vector_complex_float_reverse (gsl_vector_complex_float * v);
int gsl_vector_complex_float_swap (gsl_vector_complex_float * v, gsl_vector_complex_float * w);
int gsl_vector_complex_float_swap_elements (gsl_vector_complex_float * v, const size_t i, const size_t j);
int gsl_vector_complex_float_isnull (const gsl_vector_complex_float * v);
extern int gsl_check_range;
# 244 "../gsl/gsl_vector_complex_float.h"
# 7 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ulong.h" 1
# 26 "../gsl/gsl_vector_ulong.h"
# 1 "../gsl/gsl_block_ulong.h" 1
# 36 "../gsl/gsl_block_ulong.h"
struct gsl_block_ulong_struct
{
size_t size;
unsigned long *data;
};
typedef struct gsl_block_ulong_struct gsl_block_ulong;
gsl_block_ulong *gsl_block_ulong_alloc (const size_t n);
gsl_block_ulong *gsl_block_ulong_calloc (const size_t n);
void gsl_block_ulong_free (gsl_block_ulong * b);
int gsl_block_ulong_fread (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fwrite (FILE * stream, const gsl_block_ulong * b);
int gsl_block_ulong_fscanf (FILE * stream, gsl_block_ulong * b);
int gsl_block_ulong_fprintf (FILE * stream, const gsl_block_ulong * b, const char *format);
int gsl_block_ulong_raw_fread (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fwrite (FILE * stream, const unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fscanf (FILE * stream, unsigned long * b, const size_t n, const size_t stride);
int gsl_block_ulong_raw_fprintf (FILE * stream, const unsigned long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ulong_size (const gsl_block_ulong * b);
unsigned long * gsl_block_ulong_data (const gsl_block_ulong * b);
# 27 "../gsl/gsl_vector_ulong.h" 2
# 38 "../gsl/gsl_vector_ulong.h"
typedef struct
{
size_t size;
size_t stride;
unsigned long *data;
gsl_block_ulong *block;
int owner;
}
gsl_vector_ulong;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_view;
typedef _gsl_vector_ulong_view gsl_vector_ulong_view;
typedef struct
{
gsl_vector_ulong vector;
} _gsl_vector_ulong_const_view;
typedef const _gsl_vector_ulong_const_view gsl_vector_ulong_const_view;
gsl_vector_ulong *gsl_vector_ulong_alloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_calloc (const size_t n);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_block (gsl_block_ulong * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ulong *gsl_vector_ulong_alloc_from_vector (gsl_vector_ulong * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ulong_free (gsl_vector_ulong * v);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array (unsigned long *v, size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_view_array_with_stride (unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array (const unsigned long *v, size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_view_array_with_stride (const unsigned long *base,
size_t stride,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector (gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_view
gsl_vector_ulong_subvector_with_stride (gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector (const gsl_vector_ulong *v,
size_t i,
size_t n);
_gsl_vector_ulong_const_view
gsl_vector_ulong_const_subvector_with_stride (const gsl_vector_ulong *v,
size_t i,
size_t stride,
size_t n);
unsigned long gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x);
unsigned long *gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i);
const unsigned long *gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i);
void gsl_vector_ulong_set_zero (gsl_vector_ulong * v);
void gsl_vector_ulong_set_all (gsl_vector_ulong * v, unsigned long x);
int gsl_vector_ulong_set_basis (gsl_vector_ulong * v, size_t i);
int gsl_vector_ulong_fread (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fwrite (FILE * stream, const gsl_vector_ulong * v);
int gsl_vector_ulong_fscanf (FILE * stream, gsl_vector_ulong * v);
int gsl_vector_ulong_fprintf (FILE * stream, const gsl_vector_ulong * v,
const char *format);
int gsl_vector_ulong_memcpy (gsl_vector_ulong * dest, const gsl_vector_ulong * src);
int gsl_vector_ulong_reverse (gsl_vector_ulong * v);
int gsl_vector_ulong_swap (gsl_vector_ulong * v, gsl_vector_ulong * w);
int gsl_vector_ulong_swap_elements (gsl_vector_ulong * v, const size_t i, const size_t j);
unsigned long gsl_vector_ulong_max (const gsl_vector_ulong * v);
unsigned long gsl_vector_ulong_min (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax (const gsl_vector_ulong * v, unsigned long * min_out, unsigned long * max_out);
size_t gsl_vector_ulong_max_index (const gsl_vector_ulong * v);
size_t gsl_vector_ulong_min_index (const gsl_vector_ulong * v);
void gsl_vector_ulong_minmax_index (const gsl_vector_ulong * v, size_t * imin, size_t * imax);
int gsl_vector_ulong_add (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_sub (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_mul (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_div (gsl_vector_ulong * a, const gsl_vector_ulong * b);
int gsl_vector_ulong_scale (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_add_constant (gsl_vector_ulong * a, const double x);
int gsl_vector_ulong_isnull (const gsl_vector_ulong * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_ulong.h"
# 13 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_long.h" 1
# 26 "../gsl/gsl_vector_long.h"
# 1 "../gsl/gsl_block_long.h" 1
# 36 "../gsl/gsl_block_long.h"
struct gsl_block_long_struct
{
size_t size;
long *data;
};
typedef struct gsl_block_long_struct gsl_block_long;
gsl_block_long *gsl_block_long_alloc (const size_t n);
gsl_block_long *gsl_block_long_calloc (const size_t n);
void gsl_block_long_free (gsl_block_long * b);
int gsl_block_long_fread (FILE * stream, gsl_block_long * b);
int gsl_block_long_fwrite (FILE * stream, const gsl_block_long * b);
int gsl_block_long_fscanf (FILE * stream, gsl_block_long * b);
int gsl_block_long_fprintf (FILE * stream, const gsl_block_long * b, const char *format);
int gsl_block_long_raw_fread (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fwrite (FILE * stream, const long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fscanf (FILE * stream, long * b, const size_t n, const size_t stride);
int gsl_block_long_raw_fprintf (FILE * stream, const long * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_long_size (const gsl_block_long * b);
long * gsl_block_long_data (const gsl_block_long * b);
# 27 "../gsl/gsl_vector_long.h" 2
# 38 "../gsl/gsl_vector_long.h"
typedef struct
{
size_t size;
size_t stride;
long *data;
gsl_block_long *block;
int owner;
}
gsl_vector_long;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_view;
typedef _gsl_vector_long_view gsl_vector_long_view;
typedef struct
{
gsl_vector_long vector;
} _gsl_vector_long_const_view;
typedef const _gsl_vector_long_const_view gsl_vector_long_const_view;
gsl_vector_long *gsl_vector_long_alloc (const size_t n);
gsl_vector_long *gsl_vector_long_calloc (const size_t n);
gsl_vector_long *gsl_vector_long_alloc_from_block (gsl_block_long * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_long *gsl_vector_long_alloc_from_vector (gsl_vector_long * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_long_free (gsl_vector_long * v);
_gsl_vector_long_view
gsl_vector_long_view_array (long *v, size_t n);
_gsl_vector_long_view
gsl_vector_long_view_array_with_stride (long *base,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array (const long *v, size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_view_array_with_stride (const long *base,
size_t stride,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector (gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_view
gsl_vector_long_subvector_with_stride (gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector (const gsl_vector_long *v,
size_t i,
size_t n);
_gsl_vector_long_const_view
gsl_vector_long_const_subvector_with_stride (const gsl_vector_long *v,
size_t i,
size_t stride,
size_t n);
long gsl_vector_long_get (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x);
long *gsl_vector_long_ptr (gsl_vector_long * v, const size_t i);
const long *gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i);
void gsl_vector_long_set_zero (gsl_vector_long * v);
void gsl_vector_long_set_all (gsl_vector_long * v, long x);
int gsl_vector_long_set_basis (gsl_vector_long * v, size_t i);
int gsl_vector_long_fread (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fwrite (FILE * stream, const gsl_vector_long * v);
int gsl_vector_long_fscanf (FILE * stream, gsl_vector_long * v);
int gsl_vector_long_fprintf (FILE * stream, const gsl_vector_long * v,
const char *format);
int gsl_vector_long_memcpy (gsl_vector_long * dest, const gsl_vector_long * src);
int gsl_vector_long_reverse (gsl_vector_long * v);
int gsl_vector_long_swap (gsl_vector_long * v, gsl_vector_long * w);
int gsl_vector_long_swap_elements (gsl_vector_long * v, const size_t i, const size_t j);
long gsl_vector_long_max (const gsl_vector_long * v);
long gsl_vector_long_min (const gsl_vector_long * v);
void gsl_vector_long_minmax (const gsl_vector_long * v, long * min_out, long * max_out);
size_t gsl_vector_long_max_index (const gsl_vector_long * v);
size_t gsl_vector_long_min_index (const gsl_vector_long * v);
void gsl_vector_long_minmax_index (const gsl_vector_long * v, size_t * imin, size_t * imax);
int gsl_vector_long_add (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_sub (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_mul (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_div (gsl_vector_long * a, const gsl_vector_long * b);
int gsl_vector_long_scale (gsl_vector_long * a, const double x);
int gsl_vector_long_add_constant (gsl_vector_long * a, const double x);
int gsl_vector_long_isnull (const gsl_vector_long * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_long.h"
# 14 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uint.h" 1
# 26 "../gsl/gsl_vector_uint.h"
# 1 "../gsl/gsl_block_uint.h" 1
# 36 "../gsl/gsl_block_uint.h"
struct gsl_block_uint_struct
{
size_t size;
unsigned int *data;
};
typedef struct gsl_block_uint_struct gsl_block_uint;
gsl_block_uint *gsl_block_uint_alloc (const size_t n);
gsl_block_uint *gsl_block_uint_calloc (const size_t n);
void gsl_block_uint_free (gsl_block_uint * b);
int gsl_block_uint_fread (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fwrite (FILE * stream, const gsl_block_uint * b);
int gsl_block_uint_fscanf (FILE * stream, gsl_block_uint * b);
int gsl_block_uint_fprintf (FILE * stream, const gsl_block_uint * b, const char *format);
int gsl_block_uint_raw_fread (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fwrite (FILE * stream, const unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fscanf (FILE * stream, unsigned int * b, const size_t n, const size_t stride);
int gsl_block_uint_raw_fprintf (FILE * stream, const unsigned int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uint_size (const gsl_block_uint * b);
unsigned int * gsl_block_uint_data (const gsl_block_uint * b);
# 27 "../gsl/gsl_vector_uint.h" 2
# 38 "../gsl/gsl_vector_uint.h"
typedef struct
{
size_t size;
size_t stride;
unsigned int *data;
gsl_block_uint *block;
int owner;
}
gsl_vector_uint;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_view;
typedef _gsl_vector_uint_view gsl_vector_uint_view;
typedef struct
{
gsl_vector_uint vector;
} _gsl_vector_uint_const_view;
typedef const _gsl_vector_uint_const_view gsl_vector_uint_const_view;
gsl_vector_uint *gsl_vector_uint_alloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_calloc (const size_t n);
gsl_vector_uint *gsl_vector_uint_alloc_from_block (gsl_block_uint * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uint *gsl_vector_uint_alloc_from_vector (gsl_vector_uint * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uint_free (gsl_vector_uint * v);
_gsl_vector_uint_view
gsl_vector_uint_view_array (unsigned int *v, size_t n);
_gsl_vector_uint_view
gsl_vector_uint_view_array_with_stride (unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array (const unsigned int *v, size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_view_array_with_stride (const unsigned int *base,
size_t stride,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector (gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_view
gsl_vector_uint_subvector_with_stride (gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector (const gsl_vector_uint *v,
size_t i,
size_t n);
_gsl_vector_uint_const_view
gsl_vector_uint_const_subvector_with_stride (const gsl_vector_uint *v,
size_t i,
size_t stride,
size_t n);
unsigned int gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x);
unsigned int *gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i);
const unsigned int *gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i);
void gsl_vector_uint_set_zero (gsl_vector_uint * v);
void gsl_vector_uint_set_all (gsl_vector_uint * v, unsigned int x);
int gsl_vector_uint_set_basis (gsl_vector_uint * v, size_t i);
int gsl_vector_uint_fread (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fwrite (FILE * stream, const gsl_vector_uint * v);
int gsl_vector_uint_fscanf (FILE * stream, gsl_vector_uint * v);
int gsl_vector_uint_fprintf (FILE * stream, const gsl_vector_uint * v,
const char *format);
int gsl_vector_uint_memcpy (gsl_vector_uint * dest, const gsl_vector_uint * src);
int gsl_vector_uint_reverse (gsl_vector_uint * v);
int gsl_vector_uint_swap (gsl_vector_uint * v, gsl_vector_uint * w);
int gsl_vector_uint_swap_elements (gsl_vector_uint * v, const size_t i, const size_t j);
unsigned int gsl_vector_uint_max (const gsl_vector_uint * v);
unsigned int gsl_vector_uint_min (const gsl_vector_uint * v);
void gsl_vector_uint_minmax (const gsl_vector_uint * v, unsigned int * min_out, unsigned int * max_out);
size_t gsl_vector_uint_max_index (const gsl_vector_uint * v);
size_t gsl_vector_uint_min_index (const gsl_vector_uint * v);
void gsl_vector_uint_minmax_index (const gsl_vector_uint * v, size_t * imin, size_t * imax);
int gsl_vector_uint_add (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_sub (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_mul (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_div (gsl_vector_uint * a, const gsl_vector_uint * b);
int gsl_vector_uint_scale (gsl_vector_uint * a, const double x);
int gsl_vector_uint_add_constant (gsl_vector_uint * a, const double x);
int gsl_vector_uint_isnull (const gsl_vector_uint * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_uint.h"
# 16 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_int.h" 1
# 26 "../gsl/gsl_vector_int.h"
# 1 "../gsl/gsl_block_int.h" 1
# 36 "../gsl/gsl_block_int.h"
struct gsl_block_int_struct
{
size_t size;
int *data;
};
typedef struct gsl_block_int_struct gsl_block_int;
gsl_block_int *gsl_block_int_alloc (const size_t n);
gsl_block_int *gsl_block_int_calloc (const size_t n);
void gsl_block_int_free (gsl_block_int * b);
int gsl_block_int_fread (FILE * stream, gsl_block_int * b);
int gsl_block_int_fwrite (FILE * stream, const gsl_block_int * b);
int gsl_block_int_fscanf (FILE * stream, gsl_block_int * b);
int gsl_block_int_fprintf (FILE * stream, const gsl_block_int * b, const char *format);
int gsl_block_int_raw_fread (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fwrite (FILE * stream, const int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fscanf (FILE * stream, int * b, const size_t n, const size_t stride);
int gsl_block_int_raw_fprintf (FILE * stream, const int * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_int_size (const gsl_block_int * b);
int * gsl_block_int_data (const gsl_block_int * b);
# 27 "../gsl/gsl_vector_int.h" 2
# 38 "../gsl/gsl_vector_int.h"
typedef struct
{
size_t size;
size_t stride;
int *data;
gsl_block_int *block;
int owner;
}
gsl_vector_int;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_view;
typedef _gsl_vector_int_view gsl_vector_int_view;
typedef struct
{
gsl_vector_int vector;
} _gsl_vector_int_const_view;
typedef const _gsl_vector_int_const_view gsl_vector_int_const_view;
gsl_vector_int *gsl_vector_int_alloc (const size_t n);
gsl_vector_int *gsl_vector_int_calloc (const size_t n);
gsl_vector_int *gsl_vector_int_alloc_from_block (gsl_block_int * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_int *gsl_vector_int_alloc_from_vector (gsl_vector_int * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_int_free (gsl_vector_int * v);
_gsl_vector_int_view
gsl_vector_int_view_array (int *v, size_t n);
_gsl_vector_int_view
gsl_vector_int_view_array_with_stride (int *base,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array (const int *v, size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_view_array_with_stride (const int *base,
size_t stride,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector (gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_view
gsl_vector_int_subvector_with_stride (gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector (const gsl_vector_int *v,
size_t i,
size_t n);
_gsl_vector_int_const_view
gsl_vector_int_const_subvector_with_stride (const gsl_vector_int *v,
size_t i,
size_t stride,
size_t n);
int gsl_vector_int_get (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x);
int *gsl_vector_int_ptr (gsl_vector_int * v, const size_t i);
const int *gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i);
void gsl_vector_int_set_zero (gsl_vector_int * v);
void gsl_vector_int_set_all (gsl_vector_int * v, int x);
int gsl_vector_int_set_basis (gsl_vector_int * v, size_t i);
int gsl_vector_int_fread (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fwrite (FILE * stream, const gsl_vector_int * v);
int gsl_vector_int_fscanf (FILE * stream, gsl_vector_int * v);
int gsl_vector_int_fprintf (FILE * stream, const gsl_vector_int * v,
const char *format);
int gsl_vector_int_memcpy (gsl_vector_int * dest, const gsl_vector_int * src);
int gsl_vector_int_reverse (gsl_vector_int * v);
int gsl_vector_int_swap (gsl_vector_int * v, gsl_vector_int * w);
int gsl_vector_int_swap_elements (gsl_vector_int * v, const size_t i, const size_t j);
int gsl_vector_int_max (const gsl_vector_int * v);
int gsl_vector_int_min (const gsl_vector_int * v);
void gsl_vector_int_minmax (const gsl_vector_int * v, int * min_out, int * max_out);
size_t gsl_vector_int_max_index (const gsl_vector_int * v);
size_t gsl_vector_int_min_index (const gsl_vector_int * v);
void gsl_vector_int_minmax_index (const gsl_vector_int * v, size_t * imin, size_t * imax);
int gsl_vector_int_add (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_sub (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_mul (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_div (gsl_vector_int * a, const gsl_vector_int * b);
int gsl_vector_int_scale (gsl_vector_int * a, const double x);
int gsl_vector_int_add_constant (gsl_vector_int * a, const double x);
int gsl_vector_int_isnull (const gsl_vector_int * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_int.h"
# 17 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_ushort.h" 1
# 26 "../gsl/gsl_vector_ushort.h"
# 1 "../gsl/gsl_block_ushort.h" 1
# 36 "../gsl/gsl_block_ushort.h"
struct gsl_block_ushort_struct
{
size_t size;
unsigned short *data;
};
typedef struct gsl_block_ushort_struct gsl_block_ushort;
gsl_block_ushort *gsl_block_ushort_alloc (const size_t n);
gsl_block_ushort *gsl_block_ushort_calloc (const size_t n);
void gsl_block_ushort_free (gsl_block_ushort * b);
int gsl_block_ushort_fread (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fwrite (FILE * stream, const gsl_block_ushort * b);
int gsl_block_ushort_fscanf (FILE * stream, gsl_block_ushort * b);
int gsl_block_ushort_fprintf (FILE * stream, const gsl_block_ushort * b, const char *format);
int gsl_block_ushort_raw_fread (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fwrite (FILE * stream, const unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fscanf (FILE * stream, unsigned short * b, const size_t n, const size_t stride);
int gsl_block_ushort_raw_fprintf (FILE * stream, const unsigned short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_ushort_size (const gsl_block_ushort * b);
unsigned short * gsl_block_ushort_data (const gsl_block_ushort * b);
# 27 "../gsl/gsl_vector_ushort.h" 2
# 38 "../gsl/gsl_vector_ushort.h"
typedef struct
{
size_t size;
size_t stride;
unsigned short *data;
gsl_block_ushort *block;
int owner;
}
gsl_vector_ushort;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_view;
typedef _gsl_vector_ushort_view gsl_vector_ushort_view;
typedef struct
{
gsl_vector_ushort vector;
} _gsl_vector_ushort_const_view;
typedef const _gsl_vector_ushort_const_view gsl_vector_ushort_const_view;
gsl_vector_ushort *gsl_vector_ushort_alloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_calloc (const size_t n);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_block (gsl_block_ushort * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_ushort *gsl_vector_ushort_alloc_from_vector (gsl_vector_ushort * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_ushort_free (gsl_vector_ushort * v);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array (unsigned short *v, size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_view_array_with_stride (unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array (const unsigned short *v, size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_view_array_with_stride (const unsigned short *base,
size_t stride,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector (gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_view
gsl_vector_ushort_subvector_with_stride (gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector (const gsl_vector_ushort *v,
size_t i,
size_t n);
_gsl_vector_ushort_const_view
gsl_vector_ushort_const_subvector_with_stride (const gsl_vector_ushort *v,
size_t i,
size_t stride,
size_t n);
unsigned short gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x);
unsigned short *gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i);
const unsigned short *gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i);
void gsl_vector_ushort_set_zero (gsl_vector_ushort * v);
void gsl_vector_ushort_set_all (gsl_vector_ushort * v, unsigned short x);
int gsl_vector_ushort_set_basis (gsl_vector_ushort * v, size_t i);
int gsl_vector_ushort_fread (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fwrite (FILE * stream, const gsl_vector_ushort * v);
int gsl_vector_ushort_fscanf (FILE * stream, gsl_vector_ushort * v);
int gsl_vector_ushort_fprintf (FILE * stream, const gsl_vector_ushort * v,
const char *format);
int gsl_vector_ushort_memcpy (gsl_vector_ushort * dest, const gsl_vector_ushort * src);
int gsl_vector_ushort_reverse (gsl_vector_ushort * v);
int gsl_vector_ushort_swap (gsl_vector_ushort * v, gsl_vector_ushort * w);
int gsl_vector_ushort_swap_elements (gsl_vector_ushort * v, const size_t i, const size_t j);
unsigned short gsl_vector_ushort_max (const gsl_vector_ushort * v);
unsigned short gsl_vector_ushort_min (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax (const gsl_vector_ushort * v, unsigned short * min_out, unsigned short * max_out);
size_t gsl_vector_ushort_max_index (const gsl_vector_ushort * v);
size_t gsl_vector_ushort_min_index (const gsl_vector_ushort * v);
void gsl_vector_ushort_minmax_index (const gsl_vector_ushort * v, size_t * imin, size_t * imax);
int gsl_vector_ushort_add (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_sub (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_mul (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_div (gsl_vector_ushort * a, const gsl_vector_ushort * b);
int gsl_vector_ushort_scale (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_add_constant (gsl_vector_ushort * a, const double x);
int gsl_vector_ushort_isnull (const gsl_vector_ushort * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_ushort.h"
# 19 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_short.h" 1
# 26 "../gsl/gsl_vector_short.h"
# 1 "../gsl/gsl_block_short.h" 1
# 36 "../gsl/gsl_block_short.h"
struct gsl_block_short_struct
{
size_t size;
short *data;
};
typedef struct gsl_block_short_struct gsl_block_short;
gsl_block_short *gsl_block_short_alloc (const size_t n);
gsl_block_short *gsl_block_short_calloc (const size_t n);
void gsl_block_short_free (gsl_block_short * b);
int gsl_block_short_fread (FILE * stream, gsl_block_short * b);
int gsl_block_short_fwrite (FILE * stream, const gsl_block_short * b);
int gsl_block_short_fscanf (FILE * stream, gsl_block_short * b);
int gsl_block_short_fprintf (FILE * stream, const gsl_block_short * b, const char *format);
int gsl_block_short_raw_fread (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fwrite (FILE * stream, const short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fscanf (FILE * stream, short * b, const size_t n, const size_t stride);
int gsl_block_short_raw_fprintf (FILE * stream, const short * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_short_size (const gsl_block_short * b);
short * gsl_block_short_data (const gsl_block_short * b);
# 27 "../gsl/gsl_vector_short.h" 2
# 38 "../gsl/gsl_vector_short.h"
typedef struct
{
size_t size;
size_t stride;
short *data;
gsl_block_short *block;
int owner;
}
gsl_vector_short;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_view;
typedef _gsl_vector_short_view gsl_vector_short_view;
typedef struct
{
gsl_vector_short vector;
} _gsl_vector_short_const_view;
typedef const _gsl_vector_short_const_view gsl_vector_short_const_view;
gsl_vector_short *gsl_vector_short_alloc (const size_t n);
gsl_vector_short *gsl_vector_short_calloc (const size_t n);
gsl_vector_short *gsl_vector_short_alloc_from_block (gsl_block_short * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_short *gsl_vector_short_alloc_from_vector (gsl_vector_short * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_short_free (gsl_vector_short * v);
_gsl_vector_short_view
gsl_vector_short_view_array (short *v, size_t n);
_gsl_vector_short_view
gsl_vector_short_view_array_with_stride (short *base,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array (const short *v, size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_view_array_with_stride (const short *base,
size_t stride,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector (gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_view
gsl_vector_short_subvector_with_stride (gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector (const gsl_vector_short *v,
size_t i,
size_t n);
_gsl_vector_short_const_view
gsl_vector_short_const_subvector_with_stride (const gsl_vector_short *v,
size_t i,
size_t stride,
size_t n);
short gsl_vector_short_get (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x);
short *gsl_vector_short_ptr (gsl_vector_short * v, const size_t i);
const short *gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i);
void gsl_vector_short_set_zero (gsl_vector_short * v);
void gsl_vector_short_set_all (gsl_vector_short * v, short x);
int gsl_vector_short_set_basis (gsl_vector_short * v, size_t i);
int gsl_vector_short_fread (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fwrite (FILE * stream, const gsl_vector_short * v);
int gsl_vector_short_fscanf (FILE * stream, gsl_vector_short * v);
int gsl_vector_short_fprintf (FILE * stream, const gsl_vector_short * v,
const char *format);
int gsl_vector_short_memcpy (gsl_vector_short * dest, const gsl_vector_short * src);
int gsl_vector_short_reverse (gsl_vector_short * v);
int gsl_vector_short_swap (gsl_vector_short * v, gsl_vector_short * w);
int gsl_vector_short_swap_elements (gsl_vector_short * v, const size_t i, const size_t j);
short gsl_vector_short_max (const gsl_vector_short * v);
short gsl_vector_short_min (const gsl_vector_short * v);
void gsl_vector_short_minmax (const gsl_vector_short * v, short * min_out, short * max_out);
size_t gsl_vector_short_max_index (const gsl_vector_short * v);
size_t gsl_vector_short_min_index (const gsl_vector_short * v);
void gsl_vector_short_minmax_index (const gsl_vector_short * v, size_t * imin, size_t * imax);
int gsl_vector_short_add (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_sub (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_mul (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_div (gsl_vector_short * a, const gsl_vector_short * b);
int gsl_vector_short_scale (gsl_vector_short * a, const double x);
int gsl_vector_short_add_constant (gsl_vector_short * a, const double x);
int gsl_vector_short_isnull (const gsl_vector_short * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_short.h"
# 20 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_uchar.h" 1
# 26 "../gsl/gsl_vector_uchar.h"
# 1 "../gsl/gsl_block_uchar.h" 1
# 36 "../gsl/gsl_block_uchar.h"
struct gsl_block_uchar_struct
{
size_t size;
unsigned char *data;
};
typedef struct gsl_block_uchar_struct gsl_block_uchar;
gsl_block_uchar *gsl_block_uchar_alloc (const size_t n);
gsl_block_uchar *gsl_block_uchar_calloc (const size_t n);
void gsl_block_uchar_free (gsl_block_uchar * b);
int gsl_block_uchar_fread (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fwrite (FILE * stream, const gsl_block_uchar * b);
int gsl_block_uchar_fscanf (FILE * stream, gsl_block_uchar * b);
int gsl_block_uchar_fprintf (FILE * stream, const gsl_block_uchar * b, const char *format);
int gsl_block_uchar_raw_fread (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fwrite (FILE * stream, const unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fscanf (FILE * stream, unsigned char * b, const size_t n, const size_t stride);
int gsl_block_uchar_raw_fprintf (FILE * stream, const unsigned char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_uchar_size (const gsl_block_uchar * b);
unsigned char * gsl_block_uchar_data (const gsl_block_uchar * b);
# 27 "../gsl/gsl_vector_uchar.h" 2
# 38 "../gsl/gsl_vector_uchar.h"
typedef struct
{
size_t size;
size_t stride;
unsigned char *data;
gsl_block_uchar *block;
int owner;
}
gsl_vector_uchar;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_view;
typedef _gsl_vector_uchar_view gsl_vector_uchar_view;
typedef struct
{
gsl_vector_uchar vector;
} _gsl_vector_uchar_const_view;
typedef const _gsl_vector_uchar_const_view gsl_vector_uchar_const_view;
gsl_vector_uchar *gsl_vector_uchar_alloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_calloc (const size_t n);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_block (gsl_block_uchar * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_uchar *gsl_vector_uchar_alloc_from_vector (gsl_vector_uchar * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_uchar_free (gsl_vector_uchar * v);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array (unsigned char *v, size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_view_array_with_stride (unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array (const unsigned char *v, size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_view_array_with_stride (const unsigned char *base,
size_t stride,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector (gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_view
gsl_vector_uchar_subvector_with_stride (gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector (const gsl_vector_uchar *v,
size_t i,
size_t n);
_gsl_vector_uchar_const_view
gsl_vector_uchar_const_subvector_with_stride (const gsl_vector_uchar *v,
size_t i,
size_t stride,
size_t n);
unsigned char gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x);
unsigned char *gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i);
const unsigned char *gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i);
void gsl_vector_uchar_set_zero (gsl_vector_uchar * v);
void gsl_vector_uchar_set_all (gsl_vector_uchar * v, unsigned char x);
int gsl_vector_uchar_set_basis (gsl_vector_uchar * v, size_t i);
int gsl_vector_uchar_fread (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fwrite (FILE * stream, const gsl_vector_uchar * v);
int gsl_vector_uchar_fscanf (FILE * stream, gsl_vector_uchar * v);
int gsl_vector_uchar_fprintf (FILE * stream, const gsl_vector_uchar * v,
const char *format);
int gsl_vector_uchar_memcpy (gsl_vector_uchar * dest, const gsl_vector_uchar * src);
int gsl_vector_uchar_reverse (gsl_vector_uchar * v);
int gsl_vector_uchar_swap (gsl_vector_uchar * v, gsl_vector_uchar * w);
int gsl_vector_uchar_swap_elements (gsl_vector_uchar * v, const size_t i, const size_t j);
unsigned char gsl_vector_uchar_max (const gsl_vector_uchar * v);
unsigned char gsl_vector_uchar_min (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax (const gsl_vector_uchar * v, unsigned char * min_out, unsigned char * max_out);
size_t gsl_vector_uchar_max_index (const gsl_vector_uchar * v);
size_t gsl_vector_uchar_min_index (const gsl_vector_uchar * v);
void gsl_vector_uchar_minmax_index (const gsl_vector_uchar * v, size_t * imin, size_t * imax);
int gsl_vector_uchar_add (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_sub (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_mul (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_div (gsl_vector_uchar * a, const gsl_vector_uchar * b);
int gsl_vector_uchar_scale (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_add_constant (gsl_vector_uchar * a, const double x);
int gsl_vector_uchar_isnull (const gsl_vector_uchar * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_uchar.h"
# 22 "../gsl/gsl_vector.h" 2
# 1 "../gsl/gsl_vector_char.h" 1
# 26 "../gsl/gsl_vector_char.h"
# 1 "../gsl/gsl_block_char.h" 1
# 36 "../gsl/gsl_block_char.h"
struct gsl_block_char_struct
{
size_t size;
char *data;
};
typedef struct gsl_block_char_struct gsl_block_char;
gsl_block_char *gsl_block_char_alloc (const size_t n);
gsl_block_char *gsl_block_char_calloc (const size_t n);
void gsl_block_char_free (gsl_block_char * b);
int gsl_block_char_fread (FILE * stream, gsl_block_char * b);
int gsl_block_char_fwrite (FILE * stream, const gsl_block_char * b);
int gsl_block_char_fscanf (FILE * stream, gsl_block_char * b);
int gsl_block_char_fprintf (FILE * stream, const gsl_block_char * b, const char *format);
int gsl_block_char_raw_fread (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fwrite (FILE * stream, const char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fscanf (FILE * stream, char * b, const size_t n, const size_t stride);
int gsl_block_char_raw_fprintf (FILE * stream, const char * b, const size_t n, const size_t stride, const char *format);
size_t gsl_block_char_size (const gsl_block_char * b);
char * gsl_block_char_data (const gsl_block_char * b);
# 27 "../gsl/gsl_vector_char.h" 2
# 38 "../gsl/gsl_vector_char.h"
typedef struct
{
size_t size;
size_t stride;
char *data;
gsl_block_char *block;
int owner;
}
gsl_vector_char;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_view;
typedef _gsl_vector_char_view gsl_vector_char_view;
typedef struct
{
gsl_vector_char vector;
} _gsl_vector_char_const_view;
typedef const _gsl_vector_char_const_view gsl_vector_char_const_view;
gsl_vector_char *gsl_vector_char_alloc (const size_t n);
gsl_vector_char *gsl_vector_char_calloc (const size_t n);
gsl_vector_char *gsl_vector_char_alloc_from_block (gsl_block_char * b,
const size_t offset,
const size_t n,
const size_t stride);
gsl_vector_char *gsl_vector_char_alloc_from_vector (gsl_vector_char * v,
const size_t offset,
const size_t n,
const size_t stride);
void gsl_vector_char_free (gsl_vector_char * v);
_gsl_vector_char_view
gsl_vector_char_view_array (char *v, size_t n);
_gsl_vector_char_view
gsl_vector_char_view_array_with_stride (char *base,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array (const char *v, size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_view_array_with_stride (const char *base,
size_t stride,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector (gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_view
gsl_vector_char_subvector_with_stride (gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector (const gsl_vector_char *v,
size_t i,
size_t n);
_gsl_vector_char_const_view
gsl_vector_char_const_subvector_with_stride (const gsl_vector_char *v,
size_t i,
size_t stride,
size_t n);
char gsl_vector_char_get (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x);
char *gsl_vector_char_ptr (gsl_vector_char * v, const size_t i);
const char *gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i);
void gsl_vector_char_set_zero (gsl_vector_char * v);
void gsl_vector_char_set_all (gsl_vector_char * v, char x);
int gsl_vector_char_set_basis (gsl_vector_char * v, size_t i);
int gsl_vector_char_fread (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fwrite (FILE * stream, const gsl_vector_char * v);
int gsl_vector_char_fscanf (FILE * stream, gsl_vector_char * v);
int gsl_vector_char_fprintf (FILE * stream, const gsl_vector_char * v,
const char *format);
int gsl_vector_char_memcpy (gsl_vector_char * dest, const gsl_vector_char * src);
int gsl_vector_char_reverse (gsl_vector_char * v);
int gsl_vector_char_swap (gsl_vector_char * v, gsl_vector_char * w);
int gsl_vector_char_swap_elements (gsl_vector_char * v, const size_t i, const size_t j);
char gsl_vector_char_max (const gsl_vector_char * v);
char gsl_vector_char_min (const gsl_vector_char * v);
void gsl_vector_char_minmax (const gsl_vector_char * v, char * min_out, char * max_out);
size_t gsl_vector_char_max_index (const gsl_vector_char * v);
size_t gsl_vector_char_min_index (const gsl_vector_char * v);
void gsl_vector_char_minmax_index (const gsl_vector_char * v, size_t * imin, size_t * imax);
int gsl_vector_char_add (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_sub (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_mul (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_div (gsl_vector_char * a, const gsl_vector_char * b);
int gsl_vector_char_scale (gsl_vector_char * a, const double x);
int gsl_vector_char_add_constant (gsl_vector_char * a, const double x);
int gsl_vector_char_isnull (const gsl_vector_char * v);
extern int gsl_check_range;
# 223 "../gsl/gsl_vector_char.h"
# 23 "../gsl/gsl_vector.h" 2
# 15 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_test.h" 1
# 33 "../gsl/gsl_test.h"
void
gsl_test (int status, const char *test_description, ...);
void
gsl_test_rel (double result, double expected, double relative_error,
const char *test_description, ...) ;
void
gsl_test_abs (double result, double expected, double absolute_error,
const char *test_description, ...) ;
void
gsl_test_factor (double result, double expected, double factor,
const char *test_description, ...) ;
void
gsl_test_int (int result, int expected, const char *test_description, ...) ;
void
gsl_test_str (const char * result, const char * expected,
const char *test_description, ...) ;
void
gsl_test_verbose (int verbose) ;
int
gsl_test_summary (void) ;
# 16 "vecfloatcomplexswap.c" 2
# 1 "../gsl/gsl_ieee_utils.h" 1
# 34 "../gsl/gsl_ieee_utils.h"
enum {
GSL_IEEE_TYPE_NAN = 1,
GSL_IEEE_TYPE_INF = 2,
GSL_IEEE_TYPE_NORMAL = 3,
GSL_IEEE_TYPE_DENORMAL = 4,
GSL_IEEE_TYPE_ZERO = 5
} ;
typedef struct {
int sign ;
char mantissa[24] ;
int exponent ;
int type ;
} gsl_ieee_float_rep ;
typedef struct {
int sign ;
char mantissa[53] ;
int exponent ;
int type ;
} gsl_ieee_double_rep ;
void gsl_ieee_printf_float (const float * x) ;
void gsl_ieee_printf_double (const double * x) ;
void gsl_ieee_fprintf_float (FILE * stream, const float * x) ;
void gsl_ieee_fprintf_double (FILE * stream, const double * x) ;
void gsl_ieee_float_to_rep (const float * x, gsl_ieee_float_rep * r) ;
void gsl_ieee_double_to_rep (const double * x, gsl_ieee_double_rep * r) ;
enum {
GSL_IEEE_SINGLE_PRECISION = 1,
GSL_IEEE_DOUBLE_PRECISION = 2,
GSL_IEEE_EXTENDED_PRECISION = 3
} ;
enum {
GSL_IEEE_ROUND_TO_NEAREST = 1,
GSL_IEEE_ROUND_DOWN = 2,
GSL_IEEE_ROUND_UP = 3,
GSL_IEEE_ROUND_TO_ZERO = 4
} ;
enum {
GSL_IEEE_MASK_INVALID = 1,
GSL_IEEE_MASK_DENORMALIZED = 2,
GSL_IEEE_MASK_DIVISION_BY_ZERO = 4,
GSL_IEEE_MASK_OVERFLOW = 8,
GSL_IEEE_MASK_UNDERFLOW = 16,
GSL_IEEE_MASK_ALL = 31,
GSL_IEEE_TRAP_INEXACT = 32
} ;
void gsl_ieee_env_setup (void) ;
int gsl_ieee_read_mode_string (const char * description, int * precision,
int * rounding, int * exception_mask) ;
int gsl_ieee_set_mode (int precision, int rounding, int exception_mask) ;
# 17 "vecfloatcomplexswap.c" 2
int status = 0;
# 34 "vecfloatcomplexswap.c"
# 1 "../templates_on.h" 1
# 35 "vecfloatcomplexswap.c" 2
int
gsl_vector_swap_complex_float_elements_test
(gsl_vector_complex_float * v, const size_t i, const size_t j)
{
float * data = v->data ;
const size_t size = v->size ;
const size_t stride = v->stride ;
if (i >= size)
{
do { gsl_error ("first index is out of range", "vecfloatcomplexswap.c", 52, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (j >= size)
{
do { gsl_error ("second index is out of range", "vecfloatcomplexswap.c", 57, GSL_EINVAL) ; return GSL_EINVAL ; } while (0);
}
if (i != j)
{
const size_t s = 2 * stride ;
size_t k ;
for (k = 0; k < 2; k++)
{
float tmp = data[j*s + k];
data[j*s+k] = data[i*s + k];
data[i*s+k] = tmp;
}
}
return GSL_SUCCESS;
}
void test_complex_func (void)
{
size_t i;
gsl_vector_complex_float * v = gsl_vector_complex_float_calloc (1027);
gsl_test (v->data == 0, "gsl_vector_complex_float" "_alloc returns valid pointer");
gsl_test (v->size != 1027, "gsl_vector_complex_float" "_alloc returns valid size");
gsl_test (v->stride != 1, "gsl_vector_complex_float" "_alloc returns unit stride");
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027; i++)
{
if (v->data[2 * i] != (float) i || v->data[2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array");
status = 0;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array");
v->stride = 2 ;
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x, y;
((x).dat[0]) = (float)(2 * i);
((x).dat[1]) = (float)(2 * i + 1234);
y = gsl_vector_complex_float_get (v, i);
if (!(((x).dat[0] == (y).dat[0]) && ((x).dat[1] == (y).dat[1])))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_get reads from array with stride");
for (i = 0; i < 1027 / 2; i++)
{
gsl_complex_float x;
((x).dat[0]) = (float)i ;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
status = 0;
for (i = 0; i < 1027 / 2; i++)
{
if (v->data[2 * 2 * i] != (float) i || v->data[2 * 2 * i + 1] != (float) (i + 1234))
status = 1;
};
gsl_test (status, "gsl_vector_complex_float" "_set writes into array with stride");
v->stride = 1 ;
for (i = 0; i < 1027; i++)
{
gsl_complex_float x = {{0.0F,0.0F}};
((x).dat[0]) = (float)i;
((x).dat[1]) = (float)(i + 1234);
gsl_vector_complex_float_set (v, i, x);
};
{
gsl_complex_float x, y, r, s ;
((x).dat[0]) = 2 ;
((x).dat[1]) = 2 + 1234;
((y).dat[0]) = 5 ;
((y).dat[1]) = 5 + 1234;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status = ! (((r).dat[0] == (y).dat[0]) && ((r).dat[1] == (y).dat[1])) ;
status |= ! (((s).dat[0] == (x).dat[0]) && ((s).dat[1] == (x).dat[1])) ;
gsl_vector_complex_float_swap_elements (v, 2, 5) ;
r = gsl_vector_complex_float_get(v,2);
s = gsl_vector_complex_float_get(v,5);
status |= ! (((r).dat[0] == (x).dat[0]) && ((r).dat[1] == (x).dat[1])) ;
status |= ! (((s).dat[0] == (y).dat[0]) && ((s).dat[1] == (y).dat[1])) ;
}
gsl_test (status, "gsl_vector_complex_float" "_swap_elements" " (static) " " exchanges elements") ;
status = 0;
gsl_vector_complex_float_free (v);
}
int main(void)
{
test_complex_func ();
return 0;
}
--0-631328318-1049927740=:45589--
^ permalink raw reply [flat|nested] 15+ messages in thread
* c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
@ 2003-04-09 20:16 urazov
0 siblings, 0 replies; 15+ messages in thread
From: urazov @ 2003-04-09 20:16 UTC (permalink / raw)
To: gcc-gnats
>Number: 10365
>Category: c
>Synopsis: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Apr 09 20:16:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: urazov@yahoo.com
>Release: gcc version 3.2.2
>Organization:
>Environment:
SunOS ula 5.8 Generic_108528-19 sun4u sparc SUNW,Ultra-60
2 processor machine
Configured with: ../configure --host=sparc-sun-solaris2.8 --with-gnu-as --with-gnu-ld --disable-nls --disable-libgcj
Thread model: posix
>Description:
Test of GSL library (version gsl-1.3) is failed in vector subdirectory with message:
FAIL: gsl_vector_complex_float_swap_elements (static) exchanges elements
To work only with that failed test you can do following:
cd vector
rm test_static.o
make test_static
./test_static
Trying to pinpoint the problem I did two things: compiled that library with gcc-3.2.2 in different environment and created small test program. The results are following:
Testing in different environment:
1) Linux ema 2.2.18 #1 Wed Jan 24 12:28:55 GMT 2001
i586 unknown
with compiler gcc version 3.2.2
All test went correctly. No failure
2) CYGWIN_NT-5.0 HOOVER 1.3.17(0.67/3/2)
2002-11-27 18:54 i686 unknown
with compiler gcc version 3.2.2
All test went correctly. No failure
Small test program (named vecfloatcomplexswap.c):
I cut out relevant test function and put it in
a test program. It shown no failure
Please be advised that attached tar file contains two files: test_static.i is from distribution testbed which is fails and vecfloatcomplexswap.i is my own test program which works correctly.
-----
If you need more information or want me to do some more tests dont hesitate to contact me. I'd be very happy to help you with resolving this issue.
>How-To-Repeat:
On Sparc machine with Solaris 8 in source directory of gsl-1.3 run
./configure --disable-nls
make
make check > log 2>&1
Alternatively last command may be replaced with:
cd vector
make test_static
./test_static > log 2>&1
>Fix:
Unknown
>Release-Note:
>Audit-Trail:
>Unformatted:
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2003-04-12 20:27 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-09 21:01 c/10365: Seems like bug in code generator on Sun Sparc (Sol;aris 8) platform bangerth
-- strict thread matches above, loose matches on Subject: below --
2003-04-12 20:27 ebotcazou
2003-04-12 20:07 ebotcazou
2003-04-11 21:26 Yuri Urazov
2003-04-11 21:26 Yuri Urazov
2003-04-11 21:26 Yuri Urazov
2003-04-11 21:16 Yuri Urazov
2003-04-11 9:02 ebotcazou
2003-04-11 8:38 ebotcazou
2003-04-11 8:37 ebotcazou
2003-04-10 7:06 Eric Botcazou
2003-04-09 22:36 Yuri Urazov
2003-04-09 22:36 Yuri Urazov
2003-04-09 22:36 Yuri Urazov
2003-04-09 20:16 urazov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).