--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: gcc-4.1: internal compiler error: in find_lattice_value, at tree-complex.c
- From: Anders Johansson <ajh@watri.org.au>
- Date: Sun, 26 Nov 2006 22:55:30 +0800
- Message-id: <20061126145530.6598.5718.reportbug@machine>
Package: gcc-4.1
Version: 4.1.1-13
Severity: normal
Compiler says:
cc -c -O3 -Os -Wall -I. -I../ -o filter/iirtrans.o filter/iirtrans.c
filter/iirtrans.c: In function 'fth_zp2sos':
filter/iirtrans.c:59: internal compiler error: in find_lattice_value, at
tree-complex.c:133
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
For Debian GNU/Linux specific bug reporting instructions,
see <URL:file:///usr/share/doc/gcc-4.1/README.Bugs>.
Preprocessed source stored into /tmp/ccZxjf7r.out file, please attach
this to your bugreport.
Attached file:
// /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 -quiet -I. -I../ filter/iirtrans.c -quiet -dumpbase iirtrans.c -mtune=i686 -auxbase-strip filter/iirtrans.o -O3 -Os -Wall -o - -frandom-seed=0
# 1 "filter/iirtrans.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "filter/iirtrans.c"
# 33 "filter/iirtrans.c"
# 1 "/usr/include/stdlib.h" 1 3 4
# 25 "/usr/include/stdlib.h" 3 4
# 1 "/usr/include/features.h" 1 3 4
# 308 "/usr/include/features.h" 3 4
# 1 "/usr/include/sys/cdefs.h" 1 3 4
# 309 "/usr/include/features.h" 2 3 4
# 331 "/usr/include/features.h" 3 4
# 1 "/usr/include/gnu/stubs.h" 1 3 4
# 332 "/usr/include/features.h" 2 3 4
# 26 "/usr/include/stdlib.h" 2 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 1 3 4
# 214 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 3 4
typedef unsigned int size_t;
# 326 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 3 4
typedef int wchar_t;
# 34 "/usr/include/stdlib.h" 2 3 4
# 96 "/usr/include/stdlib.h" 3 4
typedef struct
{
int quot;
int rem;
} div_t;
typedef struct
{
long int quot;
long int rem;
} ldiv_t;
# 140 "/usr/include/stdlib.h" 3 4
extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__));
extern double atof (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern int atoi (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern long int atol (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
__extension__ extern long long int atoll (__const char *__nptr)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern double strtod (__const char *__restrict __nptr,
char **__restrict __endptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 181 "/usr/include/stdlib.h" 3 4
extern long int strtol (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern unsigned long int strtoul (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
__extension__
extern long long int strtoq (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
__extension__
extern unsigned long long int strtouq (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
__extension__
extern long long int strtoll (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
__extension__
extern unsigned long long int strtoull (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 277 "/usr/include/stdlib.h" 3 4
extern double __strtod_internal (__const char *__restrict __nptr,
char **__restrict __endptr, int __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern float __strtof_internal (__const char *__restrict __nptr,
char **__restrict __endptr, int __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long double __strtold_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long int __strtol_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __base, int __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern unsigned long int __strtoul_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __base, int __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
__extension__
extern long long int __strtoll_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __base, int __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
__extension__
extern unsigned long long int __strtoull_internal (__const char *
__restrict __nptr,
char **__restrict __endptr,
int __base, int __group)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 424 "/usr/include/stdlib.h" 3 4
extern char *l64a (long int __n) __attribute__ ((__nothrow__));
extern long int a64l (__const char *__s)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 1 "/usr/include/sys/types.h" 1 3 4
# 29 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/bits/types.h" 1 3 4
# 28 "/usr/include/bits/types.h" 3 4
# 1 "/usr/include/bits/wordsize.h" 1 3 4
# 29 "/usr/include/bits/types.h" 2 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 1 3 4
# 32 "/usr/include/bits/types.h" 2 3 4
typedef unsigned char __u_char;
typedef unsigned short int __u_short;
typedef unsigned int __u_int;
typedef unsigned long int __u_long;
typedef signed char __int8_t;
typedef unsigned char __uint8_t;
typedef signed short int __int16_t;
typedef unsigned short int __uint16_t;
typedef signed int __int32_t;
typedef unsigned int __uint32_t;
__extension__ typedef signed long long int __int64_t;
__extension__ typedef unsigned long long int __uint64_t;
__extension__ typedef long long int __quad_t;
__extension__ typedef unsigned long long int __u_quad_t;
# 129 "/usr/include/bits/types.h" 3 4
# 1 "/usr/include/bits/typesizes.h" 1 3 4
# 130 "/usr/include/bits/types.h" 2 3 4
__extension__ typedef __u_quad_t __dev_t;
__extension__ typedef unsigned int __uid_t;
__extension__ typedef unsigned int __gid_t;
__extension__ typedef unsigned long int __ino_t;
__extension__ typedef __u_quad_t __ino64_t;
__extension__ typedef unsigned int __mode_t;
__extension__ typedef unsigned int __nlink_t;
__extension__ typedef long int __off_t;
__extension__ typedef __quad_t __off64_t;
__extension__ typedef int __pid_t;
__extension__ typedef struct { int __val[2]; } __fsid_t;
__extension__ typedef long int __clock_t;
__extension__ typedef unsigned long int __rlim_t;
__extension__ typedef __u_quad_t __rlim64_t;
__extension__ typedef unsigned int __id_t;
__extension__ typedef long int __time_t;
__extension__ typedef unsigned int __useconds_t;
__extension__ typedef long int __suseconds_t;
__extension__ typedef int __daddr_t;
__extension__ typedef long int __swblk_t;
__extension__ typedef int __key_t;
__extension__ typedef int __clockid_t;
__extension__ typedef int __timer_t;
__extension__ typedef long int __blksize_t;
__extension__ typedef long int __blkcnt_t;
__extension__ typedef __quad_t __blkcnt64_t;
__extension__ typedef unsigned long int __fsblkcnt_t;
__extension__ typedef __u_quad_t __fsblkcnt64_t;
__extension__ typedef unsigned long int __fsfilcnt_t;
__extension__ typedef __u_quad_t __fsfilcnt64_t;
__extension__ typedef int __ssize_t;
typedef __off64_t __loff_t;
typedef __quad_t *__qaddr_t;
typedef char *__caddr_t;
__extension__ typedef int __intptr_t;
__extension__ typedef unsigned int __socklen_t;
# 32 "/usr/include/sys/types.h" 2 3 4
typedef __u_char u_char;
typedef __u_short u_short;
typedef __u_int u_int;
typedef __u_long u_long;
typedef __quad_t quad_t;
typedef __u_quad_t u_quad_t;
typedef __fsid_t fsid_t;
typedef __loff_t loff_t;
typedef __ino_t ino_t;
# 62 "/usr/include/sys/types.h" 3 4
typedef __dev_t dev_t;
typedef __gid_t gid_t;
typedef __mode_t mode_t;
typedef __nlink_t nlink_t;
typedef __uid_t uid_t;
typedef __off_t off_t;
# 100 "/usr/include/sys/types.h" 3 4
typedef __pid_t pid_t;
typedef __id_t id_t;
typedef __ssize_t ssize_t;
typedef __daddr_t daddr_t;
typedef __caddr_t caddr_t;
typedef __key_t key_t;
# 133 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 74 "/usr/include/time.h" 3 4
typedef __time_t time_t;
# 92 "/usr/include/time.h" 3 4
typedef __clockid_t clockid_t;
# 104 "/usr/include/time.h" 3 4
typedef __timer_t timer_t;
# 134 "/usr/include/sys/types.h" 2 3 4
# 147 "/usr/include/sys/types.h" 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 1 3 4
# 148 "/usr/include/sys/types.h" 2 3 4
typedef unsigned long int ulong;
typedef unsigned short int ushort;
typedef unsigned int uint;
# 191 "/usr/include/sys/types.h" 3 4
typedef int int8_t __attribute__ ((__mode__ (__QI__)));
typedef int int16_t __attribute__ ((__mode__ (__HI__)));
typedef int int32_t __attribute__ ((__mode__ (__SI__)));
typedef int int64_t __attribute__ ((__mode__ (__DI__)));
typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
typedef int register_t __attribute__ ((__mode__ (__word__)));
# 213 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/endian.h" 1 3 4
# 37 "/usr/include/endian.h" 3 4
# 1 "/usr/include/bits/endian.h" 1 3 4
# 38 "/usr/include/endian.h" 2 3 4
# 214 "/usr/include/sys/types.h" 2 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 31 "/usr/include/sys/select.h" 3 4
# 1 "/usr/include/bits/select.h" 1 3 4
# 32 "/usr/include/sys/select.h" 2 3 4
# 1 "/usr/include/bits/sigset.h" 1 3 4
# 23 "/usr/include/bits/sigset.h" 3 4
typedef int __sig_atomic_t;
typedef struct
{
unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
} __sigset_t;
# 35 "/usr/include/sys/select.h" 2 3 4
typedef __sigset_t sigset_t;
# 1 "/usr/include/time.h" 1 3 4
# 118 "/usr/include/time.h" 3 4
struct timespec
{
__time_t tv_sec;
long int tv_nsec;
};
# 45 "/usr/include/sys/select.h" 2 3 4
# 1 "/usr/include/bits/time.h" 1 3 4
# 69 "/usr/include/bits/time.h" 3 4
struct timeval
{
__time_t tv_sec;
__suseconds_t tv_usec;
};
# 47 "/usr/include/sys/select.h" 2 3 4
typedef __suseconds_t suseconds_t;
typedef long int __fd_mask;
# 67 "/usr/include/sys/select.h" 3 4
typedef struct
{
__fd_mask __fds_bits[1024 / (8 * sizeof (__fd_mask))];
} fd_set;
typedef __fd_mask fd_mask;
# 99 "/usr/include/sys/select.h" 3 4
# 109 "/usr/include/sys/select.h" 3 4
extern int select (int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
struct timeval *__restrict __timeout);
# 128 "/usr/include/sys/select.h" 3 4
# 217 "/usr/include/sys/types.h" 2 3 4
# 1 "/usr/include/sys/sysmacros.h" 1 3 4
# 29 "/usr/include/sys/sysmacros.h" 3 4
__extension__
extern __inline unsigned int gnu_dev_major (unsigned long long int __dev)
__attribute__ ((__nothrow__));
__extension__
extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev)
__attribute__ ((__nothrow__));
__extension__
extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major,
unsigned int __minor)
__attribute__ ((__nothrow__));
__extension__ extern __inline unsigned int
__attribute__ ((__nothrow__)) gnu_dev_major (unsigned long long int __dev)
{
return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);
}
__extension__ extern __inline unsigned int
__attribute__ ((__nothrow__)) gnu_dev_minor (unsigned long long int __dev)
{
return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);
}
__extension__ extern __inline unsigned long long int
__attribute__ ((__nothrow__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor)
{
return ((__minor & 0xff) | ((__major & 0xfff) << 8)
| (((unsigned long long int) (__minor & ~0xff)) << 12)
| (((unsigned long long int) (__major & ~0xfff)) << 32));
}
# 220 "/usr/include/sys/types.h" 2 3 4
# 231 "/usr/include/sys/types.h" 3 4
typedef __blkcnt_t blkcnt_t;
typedef __fsblkcnt_t fsblkcnt_t;
typedef __fsfilcnt_t fsfilcnt_t;
# 266 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/bits/pthreadtypes.h" 1 3 4
# 23 "/usr/include/bits/pthreadtypes.h" 3 4
# 1 "/usr/include/bits/sched.h" 1 3 4
# 83 "/usr/include/bits/sched.h" 3 4
struct __sched_param
{
int __sched_priority;
};
# 24 "/usr/include/bits/pthreadtypes.h" 2 3 4
typedef int __atomic_lock_t;
struct _pthread_fastlock
{
long int __status;
__atomic_lock_t __spinlock;
};
typedef struct _pthread_descr_struct *_pthread_descr;
typedef struct __pthread_attr_s
{
int __detachstate;
int __schedpolicy;
struct __sched_param __schedparam;
int __inheritsched;
int __scope;
size_t __guardsize;
int __stackaddr_set;
void *__stackaddr;
size_t __stacksize;
} pthread_attr_t;
__extension__ typedef long long __pthread_cond_align_t;
typedef struct
{
struct _pthread_fastlock __c_lock;
_pthread_descr __c_waiting;
char __padding[48 - sizeof (struct _pthread_fastlock)
- sizeof (_pthread_descr) - sizeof (__pthread_cond_align_t)];
__pthread_cond_align_t __align;
} pthread_cond_t;
typedef struct
{
int __dummy;
} pthread_condattr_t;
typedef unsigned int pthread_key_t;
typedef struct
{
int __m_reserved;
int __m_count;
_pthread_descr __m_owner;
int __m_kind;
struct _pthread_fastlock __m_lock;
} pthread_mutex_t;
typedef struct
{
int __mutexkind;
} pthread_mutexattr_t;
typedef int pthread_once_t;
# 152 "/usr/include/bits/pthreadtypes.h" 3 4
typedef unsigned long int pthread_t;
# 267 "/usr/include/sys/types.h" 2 3 4
# 434 "/usr/include/stdlib.h" 2 3 4
extern long int random (void) __attribute__ ((__nothrow__));
extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__));
extern char *initstate (unsigned int __seed, char *__statebuf,
size_t __statelen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
struct random_data
{
int32_t *fptr;
int32_t *rptr;
int32_t *state;
int rand_type;
int rand_deg;
int rand_sep;
int32_t *end_ptr;
};
extern int random_r (struct random_data *__restrict __buf,
int32_t *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int srandom_r (unsigned int __seed, struct random_data *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
size_t __statelen,
struct random_data *__restrict __buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));
extern int setstate_r (char *__restrict __statebuf,
struct random_data *__restrict __buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int rand (void) __attribute__ ((__nothrow__));
extern void srand (unsigned int __seed) __attribute__ ((__nothrow__));
extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__));
extern double drand48 (void) __attribute__ ((__nothrow__));
extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long int lrand48 (void) __attribute__ ((__nothrow__));
extern long int nrand48 (unsigned short int __xsubi[3])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern long int mrand48 (void) __attribute__ ((__nothrow__));
extern long int jrand48 (unsigned short int __xsubi[3])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void srand48 (long int __seedval) __attribute__ ((__nothrow__));
extern unsigned short int *seed48 (unsigned short int __seed16v[3])
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
struct drand48_data
{
unsigned short int __x[3];
unsigned short int __old_x[3];
unsigned short int __c;
unsigned short int __init;
unsigned long long int __a;
};
extern int drand48_r (struct drand48_data *__restrict __buffer,
double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int erand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int lrand48_r (struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int nrand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int mrand48_r (struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int jrand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
long int *__restrict __result)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int seed48_r (unsigned short int __seed16v[3],
struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int lcong48_r (unsigned short int __param[7],
struct drand48_data *__buffer)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *malloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
extern void *calloc (size_t __nmemb, size_t __size)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
extern void free (void *__ptr) __attribute__ ((__nothrow__));
extern void cfree (void *__ptr) __attribute__ ((__nothrow__));
# 1 "/usr/include/alloca.h" 1 3 4
# 25 "/usr/include/alloca.h" 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 1 3 4
# 26 "/usr/include/alloca.h" 2 3 4
extern void *alloca (size_t __size) __attribute__ ((__nothrow__));
# 607 "/usr/include/stdlib.h" 2 3 4
extern void *valloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
# 620 "/usr/include/stdlib.h" 3 4
extern void abort (void) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
# 652 "/usr/include/stdlib.h" 3 4
extern char *getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern char *__secure_getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int putenv (char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int setenv (__const char *__name, __const char *__value, int __replace)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__));
extern int clearenv (void) __attribute__ ((__nothrow__));
# 691 "/usr/include/stdlib.h" 3 4
extern char *mktemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 702 "/usr/include/stdlib.h" 3 4
extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1)));
# 721 "/usr/include/stdlib.h" 3 4
extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int system (__const char *__command);
# 749 "/usr/include/stdlib.h" 3 4
extern char *realpath (__const char *__restrict __name,
char *__restrict __resolved) __attribute__ ((__nothrow__));
typedef int (*__compar_fn_t) (__const void *, __const void *);
extern void *bsearch (__const void *__key, __const void *__base,
size_t __nmemb, size_t __size, __compar_fn_t __compar)
__attribute__ ((__nonnull__ (1, 2, 5)));
extern void qsort (void *__base, size_t __nmemb, size_t __size,
__compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
extern int abs (int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long int labs (long int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern div_t div (int __numer, int __denom)
__attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern ldiv_t ldiv (long int __numer, long int __denom)
__attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 814 "/usr/include/stdlib.h" 3 4
extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4)));
extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4)));
extern char *gcvt (double __value, int __ndigit, char *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
extern char *qecvt (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4)));
extern char *qfcvt (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4)));
extern char *qgcvt (long double __value, int __ndigit, char *__buf)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign, char *__restrict __buf,
size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign, char *__restrict __buf,
size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int qecvt_r (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign,
char *__restrict __buf, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int qfcvt_r (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign,
char *__restrict __buf, size_t __len)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
extern int mblen (__const char *__s, size_t __n) __attribute__ ((__nothrow__));
extern int mbtowc (wchar_t *__restrict __pwc,
__const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__));
extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__));
extern size_t mbstowcs (wchar_t *__restrict __pwcs,
__const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__));
extern size_t wcstombs (char *__restrict __s,
__const wchar_t *__restrict __pwcs, size_t __n)
__attribute__ ((__nothrow__));
extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 954 "/usr/include/stdlib.h" 3 4
extern int getloadavg (double __loadavg[], int __nelem)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
# 34 "filter/iirtrans.c" 2
# 1 "/usr/include/string.h" 1 3 4
# 28 "/usr/include/string.h" 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/stddef.h" 1 3 4
# 34 "/usr/include/string.h" 2 3 4
extern void *memcpy (void *__restrict __dest,
__const void *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memmove (void *__dest, __const void *__src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
int __c, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern void *memchr (__const void *__s, int __c, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 82 "/usr/include/string.h" 3 4
extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strncpy (char *__restrict __dest,
__const char *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strcmp (__const char *__s1, __const char *__s2)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strcoll (__const char *__s1, __const char *__s2)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern size_t strxfrm (char *__restrict __dest,
__const char *__restrict __src, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
# 130 "/usr/include/string.h" 3 4
extern char *strdup (__const char *__s)
__attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
# 165 "/usr/include/string.h" 3 4
extern char *strchr (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern char *strrchr (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 181 "/usr/include/string.h" 3 4
extern size_t strcspn (__const char *__s, __const char *__reject)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern size_t strspn (__const char *__s, __const char *__accept)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strpbrk (__const char *__s, __const char *__accept)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strstr (__const char *__haystack, __const char *__needle)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern char *__strtok_r (char *__restrict __s,
__const char *__restrict __delim,
char **__restrict __save_ptr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
char **__restrict __save_ptr)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
# 240 "/usr/include/string.h" 3 4
extern size_t strlen (__const char *__s)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
# 254 "/usr/include/string.h" 3 4
extern char *strerror (int __errnum) __attribute__ ((__nothrow__));
# 281 "/usr/include/string.h" 3 4
extern char *strerror_r (int __errnum, char *__buf, size_t __buflen)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
extern void __bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern void bcopy (__const void *__src, void *__dest, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern char *index (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern char *rindex (__const char *__s, int __c)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
extern int ffs (int __i) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 325 "/usr/include/string.h" 3 4
extern int strcasecmp (__const char *__s1, __const char *__s2)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
__attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
# 348 "/usr/include/string.h" 3 4
extern char *strsep (char **__restrict __stringp,
__const char *__restrict __delim)
__attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
# 426 "/usr/include/string.h" 3 4
# 35 "filter/iirtrans.c" 2
# 1 "/usr/include/math.h" 1 3 4
# 29 "/usr/include/math.h" 3 4
# 1 "/usr/include/bits/huge_val.h" 1 3 4
# 34 "/usr/include/math.h" 2 3 4
# 46 "/usr/include/math.h" 3 4
# 1 "/usr/include/bits/mathdef.h" 1 3 4
# 47 "/usr/include/math.h" 2 3 4
# 70 "/usr/include/math.h" 3 4
# 1 "/usr/include/bits/mathcalls.h" 1 3 4
# 53 "/usr/include/bits/mathcalls.h" 3 4
extern double acos (double __x) __attribute__ ((__nothrow__)); extern double __acos (double __x) __attribute__ ((__nothrow__));
extern double asin (double __x) __attribute__ ((__nothrow__)); extern double __asin (double __x) __attribute__ ((__nothrow__));
extern double atan (double __x) __attribute__ ((__nothrow__)); extern double __atan (double __x) __attribute__ ((__nothrow__));
extern double atan2 (double __y, double __x) __attribute__ ((__nothrow__)); extern double __atan2 (double __y, double __x) __attribute__ ((__nothrow__));
extern double cos (double __x) __attribute__ ((__nothrow__)); extern double __cos (double __x) __attribute__ ((__nothrow__));
extern double sin (double __x) __attribute__ ((__nothrow__)); extern double __sin (double __x) __attribute__ ((__nothrow__));
extern double tan (double __x) __attribute__ ((__nothrow__)); extern double __tan (double __x) __attribute__ ((__nothrow__));
extern double cosh (double __x) __attribute__ ((__nothrow__)); extern double __cosh (double __x) __attribute__ ((__nothrow__));
extern double sinh (double __x) __attribute__ ((__nothrow__)); extern double __sinh (double __x) __attribute__ ((__nothrow__));
extern double tanh (double __x) __attribute__ ((__nothrow__)); extern double __tanh (double __x) __attribute__ ((__nothrow__));
# 87 "/usr/include/bits/mathcalls.h" 3 4
extern double acosh (double __x) __attribute__ ((__nothrow__)); extern double __acosh (double __x) __attribute__ ((__nothrow__));
extern double asinh (double __x) __attribute__ ((__nothrow__)); extern double __asinh (double __x) __attribute__ ((__nothrow__));
extern double atanh (double __x) __attribute__ ((__nothrow__)); extern double __atanh (double __x) __attribute__ ((__nothrow__));
extern double exp (double __x) __attribute__ ((__nothrow__)); extern double __exp (double __x) __attribute__ ((__nothrow__));
extern double frexp (double __x, int *__exponent) __attribute__ ((__nothrow__)); extern double __frexp (double __x, int *__exponent) __attribute__ ((__nothrow__));
extern double ldexp (double __x, int __exponent) __attribute__ ((__nothrow__)); extern double __ldexp (double __x, int __exponent) __attribute__ ((__nothrow__));
extern double log (double __x) __attribute__ ((__nothrow__)); extern double __log (double __x) __attribute__ ((__nothrow__));
extern double log10 (double __x) __attribute__ ((__nothrow__)); extern double __log10 (double __x) __attribute__ ((__nothrow__));
extern double modf (double __x, double *__iptr) __attribute__ ((__nothrow__)); extern double __modf (double __x, double *__iptr) __attribute__ ((__nothrow__));
# 127 "/usr/include/bits/mathcalls.h" 3 4
extern double expm1 (double __x) __attribute__ ((__nothrow__)); extern double __expm1 (double __x) __attribute__ ((__nothrow__));
extern double log1p (double __x) __attribute__ ((__nothrow__)); extern double __log1p (double __x) __attribute__ ((__nothrow__));
extern double logb (double __x) __attribute__ ((__nothrow__)); extern double __logb (double __x) __attribute__ ((__nothrow__));
# 152 "/usr/include/bits/mathcalls.h" 3 4
extern double pow (double __x, double __y) __attribute__ ((__nothrow__)); extern double __pow (double __x, double __y) __attribute__ ((__nothrow__));
extern double sqrt (double __x) __attribute__ ((__nothrow__)); extern double __sqrt (double __x) __attribute__ ((__nothrow__));
extern double hypot (double __x, double __y) __attribute__ ((__nothrow__)); extern double __hypot (double __x, double __y) __attribute__ ((__nothrow__));
extern double cbrt (double __x) __attribute__ ((__nothrow__)); extern double __cbrt (double __x) __attribute__ ((__nothrow__));
extern double ceil (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __ceil (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern double fabs (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __fabs (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern double floor (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __floor (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern double fmod (double __x, double __y) __attribute__ ((__nothrow__)); extern double __fmod (double __x, double __y) __attribute__ ((__nothrow__));
extern int __isinf (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int __finite (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int isinf (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int finite (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern double drem (double __x, double __y) __attribute__ ((__nothrow__)); extern double __drem (double __x, double __y) __attribute__ ((__nothrow__));
extern double significand (double __x) __attribute__ ((__nothrow__)); extern double __significand (double __x) __attribute__ ((__nothrow__));
extern double copysign (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __copysign (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 231 "/usr/include/bits/mathcalls.h" 3 4
extern int __isnan (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int isnan (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern double j0 (double) __attribute__ ((__nothrow__)); extern double __j0 (double) __attribute__ ((__nothrow__));
extern double j1 (double) __attribute__ ((__nothrow__)); extern double __j1 (double) __attribute__ ((__nothrow__));
extern double jn (int, double) __attribute__ ((__nothrow__)); extern double __jn (int, double) __attribute__ ((__nothrow__));
extern double y0 (double) __attribute__ ((__nothrow__)); extern double __y0 (double) __attribute__ ((__nothrow__));
extern double y1 (double) __attribute__ ((__nothrow__)); extern double __y1 (double) __attribute__ ((__nothrow__));
extern double yn (int, double) __attribute__ ((__nothrow__)); extern double __yn (int, double) __attribute__ ((__nothrow__));
extern double erf (double) __attribute__ ((__nothrow__)); extern double __erf (double) __attribute__ ((__nothrow__));
extern double erfc (double) __attribute__ ((__nothrow__)); extern double __erfc (double) __attribute__ ((__nothrow__));
extern double lgamma (double) __attribute__ ((__nothrow__)); extern double __lgamma (double) __attribute__ ((__nothrow__));
# 265 "/usr/include/bits/mathcalls.h" 3 4
extern double gamma (double) __attribute__ ((__nothrow__)); extern double __gamma (double) __attribute__ ((__nothrow__));
extern double lgamma_r (double, int *__signgamp) __attribute__ ((__nothrow__)); extern double __lgamma_r (double, int *__signgamp) __attribute__ ((__nothrow__));
extern double rint (double __x) __attribute__ ((__nothrow__)); extern double __rint (double __x) __attribute__ ((__nothrow__));
extern double nextafter (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __nextafter (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern double remainder (double __x, double __y) __attribute__ ((__nothrow__)); extern double __remainder (double __x, double __y) __attribute__ ((__nothrow__));
extern double scalbn (double __x, int __n) __attribute__ ((__nothrow__)); extern double __scalbn (double __x, int __n) __attribute__ ((__nothrow__));
extern int ilogb (double __x) __attribute__ ((__nothrow__)); extern int __ilogb (double __x) __attribute__ ((__nothrow__));
# 71 "/usr/include/math.h" 2 3 4
# 93 "/usr/include/math.h" 3 4
# 1 "/usr/include/bits/mathcalls.h" 1 3 4
# 53 "/usr/include/bits/mathcalls.h" 3 4
extern float acosf (float __x) __attribute__ ((__nothrow__)); extern float __acosf (float __x) __attribute__ ((__nothrow__));
extern float asinf (float __x) __attribute__ ((__nothrow__)); extern float __asinf (float __x) __attribute__ ((__nothrow__));
extern float atanf (float __x) __attribute__ ((__nothrow__)); extern float __atanf (float __x) __attribute__ ((__nothrow__));
extern float atan2f (float __y, float __x) __attribute__ ((__nothrow__)); extern float __atan2f (float __y, float __x) __attribute__ ((__nothrow__));
extern float cosf (float __x) __attribute__ ((__nothrow__)); extern float __cosf (float __x) __attribute__ ((__nothrow__));
extern float sinf (float __x) __attribute__ ((__nothrow__)); extern float __sinf (float __x) __attribute__ ((__nothrow__));
extern float tanf (float __x) __attribute__ ((__nothrow__)); extern float __tanf (float __x) __attribute__ ((__nothrow__));
extern float coshf (float __x) __attribute__ ((__nothrow__)); extern float __coshf (float __x) __attribute__ ((__nothrow__));
extern float sinhf (float __x) __attribute__ ((__nothrow__)); extern float __sinhf (float __x) __attribute__ ((__nothrow__));
extern float tanhf (float __x) __attribute__ ((__nothrow__)); extern float __tanhf (float __x) __attribute__ ((__nothrow__));
# 87 "/usr/include/bits/mathcalls.h" 3 4
extern float acoshf (float __x) __attribute__ ((__nothrow__)); extern float __acoshf (float __x) __attribute__ ((__nothrow__));
extern float asinhf (float __x) __attribute__ ((__nothrow__)); extern float __asinhf (float __x) __attribute__ ((__nothrow__));
extern float atanhf (float __x) __attribute__ ((__nothrow__)); extern float __atanhf (float __x) __attribute__ ((__nothrow__));
extern float expf (float __x) __attribute__ ((__nothrow__)); extern float __expf (float __x) __attribute__ ((__nothrow__));
extern float frexpf (float __x, int *__exponent) __attribute__ ((__nothrow__)); extern float __frexpf (float __x, int *__exponent) __attribute__ ((__nothrow__));
extern float ldexpf (float __x, int __exponent) __attribute__ ((__nothrow__)); extern float __ldexpf (float __x, int __exponent) __attribute__ ((__nothrow__));
extern float logf (float __x) __attribute__ ((__nothrow__)); extern float __logf (float __x) __attribute__ ((__nothrow__));
extern float log10f (float __x) __attribute__ ((__nothrow__)); extern float __log10f (float __x) __attribute__ ((__nothrow__));
extern float modff (float __x, float *__iptr) __attribute__ ((__nothrow__)); extern float __modff (float __x, float *__iptr) __attribute__ ((__nothrow__));
# 127 "/usr/include/bits/mathcalls.h" 3 4
extern float expm1f (float __x) __attribute__ ((__nothrow__)); extern float __expm1f (float __x) __attribute__ ((__nothrow__));
extern float log1pf (float __x) __attribute__ ((__nothrow__)); extern float __log1pf (float __x) __attribute__ ((__nothrow__));
extern float logbf (float __x) __attribute__ ((__nothrow__)); extern float __logbf (float __x) __attribute__ ((__nothrow__));
# 152 "/usr/include/bits/mathcalls.h" 3 4
extern float powf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __powf (float __x, float __y) __attribute__ ((__nothrow__));
extern float sqrtf (float __x) __attribute__ ((__nothrow__)); extern float __sqrtf (float __x) __attribute__ ((__nothrow__));
extern float hypotf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __hypotf (float __x, float __y) __attribute__ ((__nothrow__));
extern float cbrtf (float __x) __attribute__ ((__nothrow__)); extern float __cbrtf (float __x) __attribute__ ((__nothrow__));
extern float ceilf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __ceilf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern float fabsf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __fabsf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern float floorf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __floorf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern float fmodf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __fmodf (float __x, float __y) __attribute__ ((__nothrow__));
extern int __isinff (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int __finitef (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int isinff (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int finitef (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern float dremf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __dremf (float __x, float __y) __attribute__ ((__nothrow__));
extern float significandf (float __x) __attribute__ ((__nothrow__)); extern float __significandf (float __x) __attribute__ ((__nothrow__));
extern float copysignf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __copysignf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 231 "/usr/include/bits/mathcalls.h" 3 4
extern int __isnanf (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int isnanf (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern float j0f (float) __attribute__ ((__nothrow__)); extern float __j0f (float) __attribute__ ((__nothrow__));
extern float j1f (float) __attribute__ ((__nothrow__)); extern float __j1f (float) __attribute__ ((__nothrow__));
extern float jnf (int, float) __attribute__ ((__nothrow__)); extern float __jnf (int, float) __attribute__ ((__nothrow__));
extern float y0f (float) __attribute__ ((__nothrow__)); extern float __y0f (float) __attribute__ ((__nothrow__));
extern float y1f (float) __attribute__ ((__nothrow__)); extern float __y1f (float) __attribute__ ((__nothrow__));
extern float ynf (int, float) __attribute__ ((__nothrow__)); extern float __ynf (int, float) __attribute__ ((__nothrow__));
extern float erff (float) __attribute__ ((__nothrow__)); extern float __erff (float) __attribute__ ((__nothrow__));
extern float erfcf (float) __attribute__ ((__nothrow__)); extern float __erfcf (float) __attribute__ ((__nothrow__));
extern float lgammaf (float) __attribute__ ((__nothrow__)); extern float __lgammaf (float) __attribute__ ((__nothrow__));
# 265 "/usr/include/bits/mathcalls.h" 3 4
extern float gammaf (float) __attribute__ ((__nothrow__)); extern float __gammaf (float) __attribute__ ((__nothrow__));
extern float lgammaf_r (float, int *__signgamp) __attribute__ ((__nothrow__)); extern float __lgammaf_r (float, int *__signgamp) __attribute__ ((__nothrow__));
extern float rintf (float __x) __attribute__ ((__nothrow__)); extern float __rintf (float __x) __attribute__ ((__nothrow__));
extern float nextafterf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __nextafterf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern float remainderf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __remainderf (float __x, float __y) __attribute__ ((__nothrow__));
extern float scalbnf (float __x, int __n) __attribute__ ((__nothrow__)); extern float __scalbnf (float __x, int __n) __attribute__ ((__nothrow__));
extern int ilogbf (float __x) __attribute__ ((__nothrow__)); extern int __ilogbf (float __x) __attribute__ ((__nothrow__));
# 94 "/usr/include/math.h" 2 3 4
# 114 "/usr/include/math.h" 3 4
# 1 "/usr/include/bits/mathcalls.h" 1 3 4
# 53 "/usr/include/bits/mathcalls.h" 3 4
extern long double acosl (long double __x) __attribute__ ((__nothrow__)); extern long double __acosl (long double __x) __attribute__ ((__nothrow__));
extern long double asinl (long double __x) __attribute__ ((__nothrow__)); extern long double __asinl (long double __x) __attribute__ ((__nothrow__));
extern long double atanl (long double __x) __attribute__ ((__nothrow__)); extern long double __atanl (long double __x) __attribute__ ((__nothrow__));
extern long double atan2l (long double __y, long double __x) __attribute__ ((__nothrow__)); extern long double __atan2l (long double __y, long double __x) __attribute__ ((__nothrow__));
extern long double cosl (long double __x) __attribute__ ((__nothrow__)); extern long double __cosl (long double __x) __attribute__ ((__nothrow__));
extern long double sinl (long double __x) __attribute__ ((__nothrow__)); extern long double __sinl (long double __x) __attribute__ ((__nothrow__));
extern long double tanl (long double __x) __attribute__ ((__nothrow__)); extern long double __tanl (long double __x) __attribute__ ((__nothrow__));
extern long double coshl (long double __x) __attribute__ ((__nothrow__)); extern long double __coshl (long double __x) __attribute__ ((__nothrow__));
extern long double sinhl (long double __x) __attribute__ ((__nothrow__)); extern long double __sinhl (long double __x) __attribute__ ((__nothrow__));
extern long double tanhl (long double __x) __attribute__ ((__nothrow__)); extern long double __tanhl (long double __x) __attribute__ ((__nothrow__));
# 87 "/usr/include/bits/mathcalls.h" 3 4
extern long double acoshl (long double __x) __attribute__ ((__nothrow__)); extern long double __acoshl (long double __x) __attribute__ ((__nothrow__));
extern long double asinhl (long double __x) __attribute__ ((__nothrow__)); extern long double __asinhl (long double __x) __attribute__ ((__nothrow__));
extern long double atanhl (long double __x) __attribute__ ((__nothrow__)); extern long double __atanhl (long double __x) __attribute__ ((__nothrow__));
extern long double expl (long double __x) __attribute__ ((__nothrow__)); extern long double __expl (long double __x) __attribute__ ((__nothrow__));
extern long double frexpl (long double __x, int *__exponent) __attribute__ ((__nothrow__)); extern long double __frexpl (long double __x, int *__exponent) __attribute__ ((__nothrow__));
extern long double ldexpl (long double __x, int __exponent) __attribute__ ((__nothrow__)); extern long double __ldexpl (long double __x, int __exponent) __attribute__ ((__nothrow__));
extern long double logl (long double __x) __attribute__ ((__nothrow__)); extern long double __logl (long double __x) __attribute__ ((__nothrow__));
extern long double log10l (long double __x) __attribute__ ((__nothrow__)); extern long double __log10l (long double __x) __attribute__ ((__nothrow__));
extern long double modfl (long double __x, long double *__iptr) __attribute__ ((__nothrow__)); extern long double __modfl (long double __x, long double *__iptr) __attribute__ ((__nothrow__));
# 127 "/usr/include/bits/mathcalls.h" 3 4
extern long double expm1l (long double __x) __attribute__ ((__nothrow__)); extern long double __expm1l (long double __x) __attribute__ ((__nothrow__));
extern long double log1pl (long double __x) __attribute__ ((__nothrow__)); extern long double __log1pl (long double __x) __attribute__ ((__nothrow__));
extern long double logbl (long double __x) __attribute__ ((__nothrow__)); extern long double __logbl (long double __x) __attribute__ ((__nothrow__));
# 152 "/usr/include/bits/mathcalls.h" 3 4
extern long double powl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __powl (long double __x, long double __y) __attribute__ ((__nothrow__));
extern long double sqrtl (long double __x) __attribute__ ((__nothrow__)); extern long double __sqrtl (long double __x) __attribute__ ((__nothrow__));
extern long double hypotl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __hypotl (long double __x, long double __y) __attribute__ ((__nothrow__));
extern long double cbrtl (long double __x) __attribute__ ((__nothrow__)); extern long double __cbrtl (long double __x) __attribute__ ((__nothrow__));
extern long double ceill (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __ceill (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long double fabsl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __fabsl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long double floorl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __floorl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long double fmodl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __fmodl (long double __x, long double __y) __attribute__ ((__nothrow__));
extern int __isinfl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int __finitel (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int isinfl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int finitel (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long double dreml (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __dreml (long double __x, long double __y) __attribute__ ((__nothrow__));
extern long double significandl (long double __x) __attribute__ ((__nothrow__)); extern long double __significandl (long double __x) __attribute__ ((__nothrow__));
extern long double copysignl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __copysignl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 231 "/usr/include/bits/mathcalls.h" 3 4
extern int __isnanl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern int isnanl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long double j0l (long double) __attribute__ ((__nothrow__)); extern long double __j0l (long double) __attribute__ ((__nothrow__));
extern long double j1l (long double) __attribute__ ((__nothrow__)); extern long double __j1l (long double) __attribute__ ((__nothrow__));
extern long double jnl (int, long double) __attribute__ ((__nothrow__)); extern long double __jnl (int, long double) __attribute__ ((__nothrow__));
extern long double y0l (long double) __attribute__ ((__nothrow__)); extern long double __y0l (long double) __attribute__ ((__nothrow__));
extern long double y1l (long double) __attribute__ ((__nothrow__)); extern long double __y1l (long double) __attribute__ ((__nothrow__));
extern long double ynl (int, long double) __attribute__ ((__nothrow__)); extern long double __ynl (int, long double) __attribute__ ((__nothrow__));
extern long double erfl (long double) __attribute__ ((__nothrow__)); extern long double __erfl (long double) __attribute__ ((__nothrow__));
extern long double erfcl (long double) __attribute__ ((__nothrow__)); extern long double __erfcl (long double) __attribute__ ((__nothrow__));
extern long double lgammal (long double) __attribute__ ((__nothrow__)); extern long double __lgammal (long double) __attribute__ ((__nothrow__));
# 265 "/usr/include/bits/mathcalls.h" 3 4
extern long double gammal (long double) __attribute__ ((__nothrow__)); extern long double __gammal (long double) __attribute__ ((__nothrow__));
extern long double lgammal_r (long double, int *__signgamp) __attribute__ ((__nothrow__)); extern long double __lgammal_r (long double, int *__signgamp) __attribute__ ((__nothrow__));
extern long double rintl (long double __x) __attribute__ ((__nothrow__)); extern long double __rintl (long double __x) __attribute__ ((__nothrow__));
extern long double nextafterl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __nextafterl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
extern long double remainderl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __remainderl (long double __x, long double __y) __attribute__ ((__nothrow__));
extern long double scalbnl (long double __x, int __n) __attribute__ ((__nothrow__)); extern long double __scalbnl (long double __x, int __n) __attribute__ ((__nothrow__));
extern int ilogbl (long double __x) __attribute__ ((__nothrow__)); extern int __ilogbl (long double __x) __attribute__ ((__nothrow__));
# 115 "/usr/include/math.h" 2 3 4
# 130 "/usr/include/math.h" 3 4
extern int signgam;
# 257 "/usr/include/math.h" 3 4
typedef enum
{
_IEEE_ = -1,
_SVID_,
_XOPEN_,
_POSIX_,
_ISOC_
} _LIB_VERSION_TYPE;
extern _LIB_VERSION_TYPE _LIB_VERSION;
# 282 "/usr/include/math.h" 3 4
struct exception
{
int type;
char *name;
double arg1;
double arg2;
double retval;
};
extern int matherr (struct exception *__exc);
# 438 "/usr/include/math.h" 3 4
# 36 "filter/iirtrans.c" 2
# 1 "/usr/include/values.h" 1 3 4
# 28 "/usr/include/values.h" 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 1 3 4
# 11 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/syslimits.h" 1 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 1 3 4
# 122 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 3 4
# 1 "/usr/include/limits.h" 1 3 4
# 144 "/usr/include/limits.h" 3 4
# 1 "/usr/include/bits/posix1_lim.h" 1 3 4
# 153 "/usr/include/bits/posix1_lim.h" 3 4
# 1 "/usr/include/bits/local_lim.h" 1 3 4
# 36 "/usr/include/bits/local_lim.h" 3 4
# 1 "/usr/include/linux/limits.h" 1 3 4
# 37 "/usr/include/bits/local_lim.h" 2 3 4
# 154 "/usr/include/bits/posix1_lim.h" 2 3 4
# 145 "/usr/include/limits.h" 2 3 4
# 1 "/usr/include/bits/posix2_lim.h" 1 3 4
# 149 "/usr/include/limits.h" 2 3 4
# 123 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 2 3 4
# 8 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/syslimits.h" 2 3 4
# 12 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 2 3 4
# 29 "/usr/include/values.h" 2 3 4
# 52 "/usr/include/values.h" 3 4
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/float.h" 1 3 4
# 53 "/usr/include/values.h" 2 3 4
# 37 "filter/iirtrans.c" 2
# 1 "/usr/include/errno.h" 1 3 4
# 32 "/usr/include/errno.h" 3 4
# 1 "/usr/include/bits/errno.h" 1 3 4
# 25 "/usr/include/bits/errno.h" 3 4
# 1 "/usr/include/linux/errno.h" 1 3 4
# 1 "/usr/include/asm/errno.h" 1 3 4
# 1 "/usr/include/asm-i486/errno.h" 1 3 4
# 1 "/usr/include/asm-generic/errno.h" 1 3 4
# 1 "/usr/include/asm-generic/errno-base.h" 1 3 4
# 5 "/usr/include/asm-generic/errno.h" 2 3 4
# 5 "/usr/include/asm-i486/errno.h" 2 3 4
# 9 "/usr/include/asm/errno.h" 2 3 4
# 5 "/usr/include/linux/errno.h" 2 3 4
# 26 "/usr/include/bits/errno.h" 2 3 4
# 38 "/usr/include/bits/errno.h" 3 4
extern int *__errno_location (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
# 37 "/usr/include/errno.h" 2 3 4
# 59 "/usr/include/errno.h" 3 4
# 38 "filter/iirtrans.c" 2
# 1 "/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h" 1 3 4
# 39 "filter/iirtrans.c" 2
# 1 "./filth.h" 1
# 53 "./filth.h"
# 1 "/usr/include/complex.h" 1 3 4
# 29 "/usr/include/complex.h" 3 4
# 1 "/usr/include/bits/mathdef.h" 1 3 4
# 30 "/usr/include/complex.h" 2 3 4
# 67 "/usr/include/complex.h" 3 4
# 1 "/usr/include/bits/cmathcalls.h" 1 3 4
# 54 "/usr/include/bits/cmathcalls.h" 3 4
extern double _Complex cacos (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __cacos (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex casin (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __casin (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex catan (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __catan (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex ccos (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __ccos (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex csin (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __csin (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex ctan (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __ctan (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex cacosh (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __cacosh (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex casinh (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __casinh (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex catanh (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __catanh (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex ccosh (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __ccosh (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex csinh (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __csinh (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex ctanh (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __ctanh (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex cexp (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __cexp (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex clog (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __clog (double _Complex __z) __attribute__ ((__nothrow__));
# 102 "/usr/include/bits/cmathcalls.h" 3 4
extern double _Complex cpow (double _Complex __x, double _Complex __y) __attribute__ ((__nothrow__)); extern double _Complex __cpow (double _Complex __x, double _Complex __y) __attribute__ ((__nothrow__));
extern double _Complex csqrt (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __csqrt (double _Complex __z) __attribute__ ((__nothrow__));
extern double cabs (double _Complex __z) __attribute__ ((__nothrow__)); extern double __cabs (double _Complex __z) __attribute__ ((__nothrow__));
extern double carg (double _Complex __z) __attribute__ ((__nothrow__)); extern double __carg (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex conj (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __conj (double _Complex __z) __attribute__ ((__nothrow__));
extern double _Complex cproj (double _Complex __z) __attribute__ ((__nothrow__)); extern double _Complex __cproj (double _Complex __z) __attribute__ ((__nothrow__));
extern double cimag (double _Complex __z) __attribute__ ((__nothrow__)); extern double __cimag (double _Complex __z) __attribute__ ((__nothrow__));
extern double creal (double _Complex __z) __attribute__ ((__nothrow__)); extern double __creal (double _Complex __z) __attribute__ ((__nothrow__));
# 68 "/usr/include/complex.h" 2 3 4
# 81 "/usr/include/complex.h" 3 4
# 1 "/usr/include/bits/cmathcalls.h" 1 3 4
# 54 "/usr/include/bits/cmathcalls.h" 3 4
extern float _Complex cacosf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __cacosf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex casinf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __casinf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex catanf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __catanf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex ccosf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __ccosf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex csinf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __csinf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex ctanf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __ctanf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex cacoshf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __cacoshf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex casinhf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __casinhf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex catanhf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __catanhf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex ccoshf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __ccoshf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex csinhf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __csinhf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex ctanhf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __ctanhf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex cexpf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __cexpf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex clogf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __clogf (float _Complex __z) __attribute__ ((__nothrow__));
# 102 "/usr/include/bits/cmathcalls.h" 3 4
extern float _Complex cpowf (float _Complex __x, float _Complex __y) __attribute__ ((__nothrow__)); extern float _Complex __cpowf (float _Complex __x, float _Complex __y) __attribute__ ((__nothrow__));
extern float _Complex csqrtf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __csqrtf (float _Complex __z) __attribute__ ((__nothrow__));
extern float cabsf (float _Complex __z) __attribute__ ((__nothrow__)); extern float __cabsf (float _Complex __z) __attribute__ ((__nothrow__));
extern float cargf (float _Complex __z) __attribute__ ((__nothrow__)); extern float __cargf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex conjf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __conjf (float _Complex __z) __attribute__ ((__nothrow__));
extern float _Complex cprojf (float _Complex __z) __attribute__ ((__nothrow__)); extern float _Complex __cprojf (float _Complex __z) __attribute__ ((__nothrow__));
extern float cimagf (float _Complex __z) __attribute__ ((__nothrow__)); extern float __cimagf (float _Complex __z) __attribute__ ((__nothrow__));
extern float crealf (float _Complex __z) __attribute__ ((__nothrow__)); extern float __crealf (float _Complex __z) __attribute__ ((__nothrow__));
# 82 "/usr/include/complex.h" 2 3 4
# 97 "/usr/include/complex.h" 3 4
# 1 "/usr/include/bits/cmathcalls.h" 1 3 4
# 54 "/usr/include/bits/cmathcalls.h" 3 4
extern long double _Complex cacosl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __cacosl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex casinl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __casinl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex catanl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __catanl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex ccosl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __ccosl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex csinl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __csinl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex ctanl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __ctanl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex cacoshl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __cacoshl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex casinhl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __casinhl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex catanhl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __catanhl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex ccoshl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __ccoshl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex csinhl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __csinhl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex ctanhl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __ctanhl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex cexpl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __cexpl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex clogl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __clogl (long double _Complex __z) __attribute__ ((__nothrow__));
# 102 "/usr/include/bits/cmathcalls.h" 3 4
extern long double _Complex cpowl (long double _Complex __x, long double _Complex __y) __attribute__ ((__nothrow__)); extern long double _Complex __cpowl (long double _Complex __x, long double _Complex __y) __attribute__ ((__nothrow__));
extern long double _Complex csqrtl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __csqrtl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double cabsl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double __cabsl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double cargl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double __cargl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex conjl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __conjl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double _Complex cprojl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double _Complex __cprojl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double cimagl (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double __cimagl (long double _Complex __z) __attribute__ ((__nothrow__));
extern long double creall (long double _Complex __z) __attribute__ ((__nothrow__)); extern long double __creall (long double _Complex __z) __attribute__ ((__nothrow__));
# 98 "/usr/include/complex.h" 2 3 4
# 54 "./filth.h" 2
char* fth_errlist[1- -1];
# 1 "./filter.h" 1
# 184 "./filter.h"
int fth_ampfunc(int n, double* w, int k, double* f, double* a, int flags);
int fth_response(unsigned int n, double* b, unsigned int m, double* a, unsigned int k, double* f, void* r, int flags);
int fth_design_error(unsigned int n, double* b, unsigned int m, double* a, unsigned int k, double* f, double _Complex* hd, double* v, double* r, int flags);
int fth_erroroptwin(unsigned int n, double* w, double fs, double* e, int flags);
int fth_window(unsigned int n, double* w, double* fc, unsigned int flags, double opt);
int fth_ls(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* v, int flags);
int fth_cls(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* gd, double* v, double ph);
int fth_clsgd(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* v, double* gd, double* vg, double ph);
int fth_remez(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* v, int flags);
int fth_minimax(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* v, int flags);
int fth_minphase(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* v);
int fth_minphaseminimax(unsigned int n, double* w, unsigned int k, unsigned int kl, double* f, double* ad, double* v, unsigned int l, double* g);
int fth_minphasels(unsigned int n, double* w, unsigned int k, double* f, double* au, double* al, double fs, unsigned int l, double* g);
int fth_cepminphase(unsigned int n, double* w, unsigned int k, double* au, double* al, double t);
int fth_cminimax(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* gd,double* v, double ph);
int fth_cminimaxgd(unsigned int n, double* w, unsigned int k, double* f, double* ad, double* v, double* gd, double* vg, double ph);
int fth_qpoptwin(unsigned int n, double* w, double fs, double s, int flags);
int fth_minimaxoptwin(unsigned int n, double* w, double fs, int flags);
int fth_daubechies(unsigned int n, double* w, int flags);
int fth_rootsdaubechies(unsigned int n, double _Complex* z);
int fth_minphasedaubechies(unsigned int n, double* w, int flags);
int fth_cminimaxeq(unsigned int n, double* w, unsigned int kp, double* fp, double _Complex* hd, double _Complex* g, unsigned int ks, double* fs, double* s);
int fth_cminimaxgdeq(unsigned int n, double* w, unsigned int kp, double* fp, double _Complex* hd, double _Complex* g, double* ggd, double* gth, double* gd, double* vg, unsigned int ks, double* fs, double* s);
int fth_bessel(unsigned int n, double* num, double* den);
int fth_butterworth(unsigned int n, double* num, double* den);
int fth_chebyshev(unsigned int n, double* num, double* den, double* g,double e);
int fth_ichebyshev(unsigned int n, double* num, double* den, double* g, double e);
int fth_elliptic(unsigned int n, double* num, double* den, double* g, double e, double k1);
int fth_simple(double* num, double* den, double q, double a, int flags);
int fth_sos2poly(unsigned int n, double* num, double* den, double* g, double* b, double* a);
int fth_poly2sos(unsigned int n, double* b, double* a, double* g, double* num, double* den);
int fth_sos2zp(unsigned int n, double* num, double* den, double* g, double _Complex* z, double _Complex* p);
int fth_zp2sos(unsigned int n, double _Complex* z, double _Complex* p, double* num, double* den);
int fth_poly2zp(unsigned int n, double* b, double* a, double* g, double _Complex* z, double _Complex* p);
int fth_zp2poly(unsigned int n, double _Complex* z, double _Complex* p, double* g,double* b, double* a);
int fth_slp2lp(unsigned int n, double* num, double* den, double fc, double* g, double* numt, double* dent);
int fth_slp2hp(unsigned int n, double* num, double* den, double fc, double* g, double* numt, double* dent);
int fth_slp2bp(unsigned int n, double* num, double* den, double fc, double fb, double* g, double* numt, double* dent);
int fth_slp2bs(unsigned int n, double* num, double* den, double fc, double fb, double* g, double* numt, double* dent);
int fth_bilinear(unsigned int n, double* num, double* den, double Q, double fc, double *g, double *numt, double *dent);
int fth_bilinear_adv(unsigned int n, double* num, double* den, double Q, double f, double fs, double ft, double *g, double *numt, double *dent);
int fth_sresponse(unsigned int n, double* num, double* den, double g, unsigned int k, double* f, void* r, int flags);
void fth_boxcar(int n, double* w);
void fth_triang(int n, double* w);
void fth_hanning(int n, double* w);
void fth_hamming(int n,double* w);
void fth_blackman(int n,double* w);
void fth_flattop(int n,double* w);
void fth_raised_cosine(int n,double* w);
void fth_welch(int n,double* w);
void fth_kaiser(int n, double* w,double b);
# 63 "./filth.h" 2
# 1 "./matrix.h" 1
# 84 "./matrix.h"
typedef struct frac_s{
long long int n;
int d;
}frac_t;
void* mat_calloc(size_t wz, unsigned int n, ...);
void* mat_malloc(size_t wz, unsigned int n, ...);
int mat_memcpy(unsigned int n, void* dest, void* src, size_t sz);
int mat_memcpy_adv(unsigned int n, size_t dos, size_t sos, void* dest, void* src, size_t sz);
int mat_memset(unsigned int n, void* s, int c, size_t sz);
int mat_conv(unsigned int n, unsigned int m, double* x, double* y, double* z);
int mat_convf(unsigned int n, unsigned int m, float* x, float* y, float* z);
int mat_cconv(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex* z, int flags);
int mat_cconvf(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex* z, int flags);
int mat_conv_fft(unsigned int n, unsigned int m, double* x, double* y, double* z, void** ws);
int mat_conv_fftf(unsigned int n, unsigned int m, float* x, float* y, float* z, void** ws);
int mat_cconv_fft(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex* z, int flags, void** ws);
int mat_cconv_fftf(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex* z, int flags, void** ws);
int mat_deconv(unsigned int n, unsigned int m, double* x, double* y, double* q, double* r);
int mat_deconvf(unsigned int n, unsigned int m, float* x, float* y, float* q, float* r);
int mat_cdeconv(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex* q, double _Complex* r, int flags);
int mat_cdeconvf(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex* q, float _Complex* r, int flags);
int mat_deconv_fft(unsigned int n, unsigned int m, double* x, double* y, double* q, void** ws);
int mat_deconv_fftf(unsigned int n, unsigned int m, float* x, float* y, float* q, void** ws);
int mat_cdeconv_fft(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex* q, int flags, void** ws);
int mat_cdeconv_fftf(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex* q, int flags, void** ws);
int mat_filter(unsigned int n, unsigned int p, unsigned int q, double* x, double* y, double* a, double* b, void** ws);
int mat_filterf(unsigned int n, unsigned int p, unsigned int q, float* x, float* y, float* a, float* b, void** ws);
int mat_cfilter(unsigned int n, unsigned int p, unsigned int q, double _Complex* x, double _Complex* y, double _Complex* a, double _Complex* b, void** ws);
int mat_cfilterf(unsigned int n, unsigned int p, unsigned int q, float _Complex* x, float _Complex* y, float _Complex* a, float _Complex* b, void** ws);
int mat_flip(unsigned int n, double* x, double* y);
int mat_flipf(unsigned int n, float* x, float* y);
int mat_cflip(unsigned int n, double _Complex* x, double _Complex* y);
int mat_cflipf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_mult(unsigned int n, unsigned int m, unsigned int l, double** x, double** y, double** z, int flags);
int mat_multf(unsigned int n, unsigned int m, unsigned int l, float** x, float** y, float** z, int flags);
int mat_cmult(unsigned int n, unsigned int m, unsigned int l, double _Complex** x, double _Complex** y, double _Complex** z, int flags);
int mat_cmultf(unsigned int n, unsigned int m, unsigned int l, float _Complex** x, float _Complex** y, float _Complex** z, int flags);
double mat_vmult(unsigned int n, double* x, double* y);
float mat_vmultf(unsigned int n, float* x, float* y);
double _Complex mat_cvmult(unsigned int n, double _Complex* x, double _Complex* y, int flags);
float _Complex mat_cvmultf(unsigned int n, float _Complex* x, float _Complex* y, int flags);
int mat_add(unsigned int n, double* x, double* y, double* z);
int mat_addf(unsigned int n, float* x, float* y, float* z);
int mat_cadd(unsigned int n, double _Complex* x, double _Complex* y, double _Complex* z, int flags);
int mat_caddf(unsigned int n, float _Complex* x, float _Complex* y, float _Complex* z, int flags);
int mat_sub(unsigned int n, double * x, double* y, double* z);
int mat_subf(unsigned int n, float* x, float* y, float* z);
int mat_csub(unsigned int n, double _Complex* x, double _Complex* y, double _Complex* z, int flags);
int mat_csubf(unsigned int n, float _Complex* x, float _Complex* y, float _Complex* z, int flags);
int mat_omult(unsigned int n, double* x, double* y, double* z);
int mat_omultf(unsigned int n, float* x, float* y, float* z);
int mat_comult(unsigned int n, double _Complex* x, double _Complex* y, double _Complex* z, int flags);
int mat_comultf(unsigned int n, float _Complex* x, float _Complex* y, float _Complex* z, int flags);
int mat_odiv(unsigned int n, double* x, double* y, double* z);
int mat_odivf(unsigned int n, float* x, float* y, float* z);
int mat_codiv(unsigned int n, double _Complex* x, double _Complex* y, double _Complex* z, int flags);
int mat_codivf(unsigned int n, float _Complex* x, float _Complex* y, float _Complex* z, int flags);
int mat_sadd(unsigned int n, double x, double* y, double* z);
int mat_saddf(unsigned int n, float x, float* y, float* z);
int mat_csadd(unsigned int n, double _Complex x, double _Complex* y, double _Complex* z, int flags);
int mat_csaddf(unsigned int n, float _Complex x, float _Complex* y, float _Complex* z, int flags);
int mat_ssub(unsigned int n, double x, double* y, double* z);
int mat_ssubf(unsigned int n, float x, float* y, float* z);
int mat_cssub(unsigned int n, double _Complex x, double _Complex* y, double _Complex* z, int flags);
int mat_cssubf(unsigned int n, float _Complex x, float _Complex* y, float _Complex* z, int flags);
int mat_smult(unsigned int n, double x, double* y, double* z);
int mat_smultf(unsigned int n, float x, float* y, float* z);
int mat_csmult(unsigned int n, double _Complex x, double _Complex* y, double _Complex* z, int flags);
int mat_csmultf(unsigned int n, float _Complex x, float _Complex* y, float _Complex* z, int flags);
int mat_real(unsigned int n, double _Complex* x, double* y);
int mat_realf(unsigned int n, float _Complex* x, float* y);
int mat_imag(unsigned int n, double _Complex* x, double* y);
int mat_imagf(unsigned int n, float _Complex* x, float* y);
int mat_reals(unsigned int n, double* x, double _Complex* y);
int mat_realsf(unsigned int n, float* x, float _Complex* y);
int mat_imags(unsigned int n, double* x, double _Complex* y);
int mat_imagsf(unsigned int n, float* x, float _Complex* y);
int mat_abs(unsigned int n, double* x, double* y);
int mat_absf(unsigned int n, float* x, float* y);
int mat_cabs(unsigned int n, double _Complex* x, double* y);
int mat_cabsf(unsigned int n, float _Complex* x, float* y);
int mat_conj(unsigned int n, double _Complex* x, double _Complex* y);
int mat_conjf(unsigned int n, float _Complex* x, float _Complex* y);
double mat_max(unsigned int n, double* x);
float mat_maxf(unsigned int n, float* x);
double mat_min(unsigned int n, double* x);
float mat_minf(unsigned int n, float* x);
double mat_max_abs(unsigned int n, double* x);
float mat_max_absf(unsigned int n, float* x);
double _Complex mat_cmax_abs(unsigned int n, double _Complex* x);
float _Complex mat_cmax_absf(unsigned int n, float _Complex* x);
double mat_min_abs(unsigned int n, double* x);
float mat_min_absf(unsigned int n, float* x);
double _Complex mat_cmin_abs(unsigned int n, double _Complex* x);
float _Complex mat_cmin_absf(unsigned int n, float _Complex* x);
double mat_prod(unsigned int n, double* x);
float mat_prodf(unsigned int n, float* x);
double _Complex mat_cprod(unsigned int n, double _Complex* x);
float _Complex mat_cprodf(unsigned int n, float _Complex* x);
double mat_sum(unsigned int n, double* x);
float mat_sumf(unsigned int n, float* x);
double _Complex mat_csum(unsigned int n, double _Complex* x);
float _Complex mat_csumf(unsigned int n, float _Complex* x);
int mat_kron(unsigned int n, unsigned int m, unsigned int l, unsigned int i, double** x, double** y, double** z);
int mat_kronf(unsigned int n, unsigned int m, unsigned int l, unsigned int i, float** x, float** y, float** z);
int mat_ckron(unsigned int n, unsigned int m, unsigned int l, unsigned int i, double _Complex** x, double _Complex** y, double _Complex** z);
int mat_ckronf(unsigned int n, unsigned int m, unsigned int l, unsigned int i, float _Complex** x, float _Complex** y, float _Complex** z);
int mat_vkron(unsigned int n, unsigned int m, double* x, double* y, double** z);
int mat_vkronf(unsigned int n, unsigned int m, float* x, float* y, float** z);
int mat_cvkron(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex** z, int flags);
int mat_cvkronf(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex** z, int flags);
int mat_toeplitz(unsigned int n, double* x, double* y, double** z);
int mat_toeplitzf(unsigned int n, float* x, float* y, float** z);
int mat_ctoeplitz(unsigned int n, double _Complex* x, double _Complex* y, double _Complex** z, int flags);
int mat_ctoeplitzf(unsigned int n, float _Complex* x, float _Complex* y, float _Complex** z, int flags);
int mat_inv(unsigned int n, double** x, double** y);
int mat_invf(unsigned int n, float** x, float** y);
int mat_cinv(unsigned int n, double _Complex** x, double _Complex** y);
int mat_cinvf(unsigned int n, float _Complex** x, float _Complex** y);
int mat_vmil(unsigned int n, double** a, double* u, double* v, double** y);
int mat_vmilf(unsigned int n, float** a, float* u, float* v, float** y);
int mat_cvmil(unsigned int n, double _Complex** a, double _Complex* u, double _Complex* v, double _Complex** y);
int mat_cvmilf(unsigned int n, float _Complex** a, float _Complex* u, float _Complex* v, float _Complex** y);
int mat_eye(unsigned int n, double** x);
int mat_eyef(unsigned int n, float** x);
int mat_ceye(unsigned int n, double _Complex** x);
int mat_ceyef(unsigned int n, float _Complex** x);
int mat_triu(unsigned int n, int k, double** x);
int mat_triuf(unsigned int n, int k, float** x);
int mat_ctriu(unsigned int n, int k, double _Complex** x);
int mat_ctriuf(unsigned int n, int k, float _Complex** x);
int mat_tril(unsigned int n, int k, double** x);
int mat_trilf(unsigned int n, int k, float** x);
int mat_ctril(unsigned int n, int k, double _Complex** x);
int mat_ctrilf(unsigned int n, int k, float _Complex** x);
int mat_diag(unsigned int n, double** x, double* y);
int mat_diagf(unsigned int n, float** x, float* y);
int mat_cdiag(unsigned int n, double _Complex** x, double _Complex* y);
int mat_cdiagf(unsigned int n, float _Complex** x, float _Complex* y);
int mat_diags(unsigned int n, double** x, double* y);
int mat_diagsf(unsigned int n, float** x, float* y);
int mat_cdiags(unsigned int n, double _Complex** x, double _Complex* y);
int mat_cdiagsf(unsigned int n, float _Complex** x, float _Complex* y);
int mat_fft(unsigned int n, double* x, double _Complex* y, void** ws);
int mat_fftf(unsigned int n, float* x, float _Complex* y, void** ws);
int mat_ifft(unsigned int n, double _Complex* x, double* y, void** ws);
int mat_ifftf(unsigned int n, float _Complex* x, float* y, void** ws);
int mat_cfft(unsigned int n, double _Complex* x, double _Complex* y, void** ws);
int mat_cfftf(unsigned int n, float _Complex* x, float _Complex* y, void** ws);
int mat_cifft(unsigned int n, double _Complex* x, double _Complex* y, void** ws);
int mat_cifftf(unsigned int n, float _Complex* x, float _Complex* y, void** ws);
int mat_ft(unsigned int n, double* x, unsigned int k, double* f, double _Complex* y);
int mat_ftf(unsigned int n, float* x, unsigned int k, float* f, float _Complex* y);
int mat_ift(unsigned int n, double* x, unsigned int k, double* f, double _Complex* y);
int mat_iftf(unsigned int n, float* x, unsigned int k, float* f, float _Complex* y);
int mat_cft(unsigned int n, double _Complex* x, unsigned int k, double* f, double _Complex* y);
int mat_cftf(unsigned int n, float _Complex* x, unsigned int k, float* f, float _Complex* y);
int mat_cift(unsigned int n, double _Complex* x, unsigned int k, double* f, double _Complex* y);
int mat_ciftf(unsigned int n, float _Complex* x, unsigned int k, float* f, float _Complex* y);
int mat_solve(unsigned int n, unsigned int m, double** a, double* b, double* x, double** ws);
int mat_solvef(unsigned int n, unsigned int m, float** a, float* b, float* x, float** ws);
int mat_csolve(unsigned int n, unsigned int m, double _Complex** a, double _Complex* b, double _Complex* x, double _Complex** ws);
int mat_csolvef(unsigned int n, unsigned int m, float _Complex** a, float _Complex* b, float _Complex* x, float _Complex** ws);
int mat_lu(unsigned int n, unsigned int m, double** x, double** y, int* p);
int mat_luf(unsigned int n, unsigned int m, float** x, float** y, int* p);
int mat_clu(unsigned int n, unsigned int m, double _Complex** x, double _Complex** y, int* p);
int mat_cluf(unsigned int n, unsigned int m, float _Complex** x, float _Complex** y, int* p);
int mat_levinson(unsigned int n, double* a, double* b, double* x, double* err, void** ws);
int mat_levinsonf(unsigned int n, float* a, float* b, float* x, float* err, void** ws);
int mat_clevinson(unsigned int n, double _Complex* a, double _Complex* b, double _Complex* x, double _Complex* err, void** ws);
int mat_clevinsonf(unsigned int n, float _Complex* a, float _Complex* b, float _Complex* x, float _Complex* err, void** ws);
int mat_trace(unsigned int n, double** x, double* y);
int mat_tracef(unsigned int n, float** x, float* y);
int mat_ctrace(unsigned int n, double _Complex** x, double _Complex* y);
int mat_ctracef(unsigned int n, float _Complex** x, float _Complex* y);
int mat_det(unsigned int n, double** x, double* y);
int mat_detf(unsigned int n, float** x, float* y);
int mat_cdet(unsigned int n, double _Complex** x, double _Complex* y);
int mat_cdetf(unsigned int n, float _Complex** x, float _Complex* y);
int mat_househ(unsigned int n, unsigned int m, int k, double** x, double** y, double** v);
int mat_househf(unsigned int n, unsigned int m, int k, float** x, float** y, float** v);
int mat_chouseh(unsigned int n, unsigned int m, int k, double _Complex** x, double _Complex** y, double _Complex** v);
int mat_chousehf(unsigned int n, unsigned int m, int k, float _Complex** x, float _Complex** y, float _Complex** v);
int mat_qr(unsigned int n, unsigned int m, double** a, double** r, double** q);
int mat_qrf(unsigned int n, unsigned int m, float** a, float** r, float** q);
int mat_cqr(unsigned int n, unsigned int m, double _Complex** a, double _Complex** r, double _Complex** q);
int mat_cqrf(unsigned int n, unsigned int m, float _Complex** a, float _Complex** r, float _Complex** q);
int mat_schur(unsigned int n, double** a, double** t, double** u, void** ws);
int mat_schurf(unsigned int n, float** a, float** t, float** u, void** ws);
int mat_cschur(unsigned int n, double _Complex** a, double _Complex** t, double _Complex** u, void** ws);
int mat_cschurf(unsigned int n, float _Complex** a, float _Complex** t, float _Complex** u, void** ws);
int mat_rs2cs(unsigned int n, double** t, double** u, double _Complex** tc, double _Complex** uc);
int mat_rs2csf(unsigned int n, float** t, float** u, float _Complex** tc, float _Complex** uc);
int mat_eig(unsigned int n, double** a, double _Complex* d, double _Complex** u, void** ws);
int mat_eigf(unsigned int n, float** a, float _Complex* d, float _Complex** u, void** ws);
int mat_ceig(unsigned int n, double _Complex** a, double _Complex* d, double _Complex** u, void** ws);
int mat_ceigf(unsigned int n, float _Complex** a, float _Complex* d, float _Complex** u, void** ws);
int mat_sqrtm(unsigned int n, double** x, double _Complex** y, void** ws);
int mat_sqrtmf(unsigned int n, float** x, float _Complex** y, void** ws);
int mat_csqrtm(unsigned int n, double _Complex** x, double _Complex** y, void** ws);
int mat_csqrtmf(unsigned int n, float _Complex** x, float _Complex** y, void** ws);
int mat_poly(unsigned int n, double _Complex* x, double* y);
int mat_polyf(unsigned int n, float _Complex* x, float* y);
int mat_cpoly(unsigned int n, double _Complex* x, double _Complex* y);
int mat_cpolyf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_poly_fft(unsigned int n, double _Complex* x, double* y);
int mat_poly_fftf(unsigned int n, float _Complex* x, float* y);
int mat_cpoly_fft(unsigned int n, double _Complex* x, double _Complex* y);
int mat_cpoly_fftf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_deflate(unsigned int n, unsigned int m, double* x, double _Complex* y, double* z);
int mat_deflatef(unsigned int n, unsigned int m, float* x, float _Complex* y, float* z);
int mat_cdeflate(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex* z);
int mat_cdeflatef(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex* z);
int mat_specfactor(unsigned int n, double* p, double* q);
int mat_specfactorf(unsigned int n, float* p, float* q);
int mat_roots(unsigned int n, double* x, double _Complex* y);
int mat_rootsf(unsigned int n, float* x, float _Complex* y);
int mat_croots(unsigned int n, double _Complex* x, double _Complex* y);
int mat_crootsf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_roots_quad(double* x, double _Complex* y);
int mat_roots_quadf(float* x, float _Complex* y);
int mat_croots_quad(double _Complex* x, double _Complex* y);
int mat_croots_quadf(float _Complex* x, float _Complex* y);
int mat_roots_cube(double* x, double _Complex* y);
int mat_roots_cubef(float* x, float _Complex* y);
int mat_roots_quart(double* x, double _Complex* y);
int mat_roots_quartf(float* x, float _Complex* y);
int mat_roots_newton(unsigned int n, unsigned int m, double* x, double _Complex* y, double _Complex* z);
int mat_roots_newtonf(unsigned int n, unsigned int m, float* x, float _Complex* y, float _Complex* z);
int mat_croots_newton(unsigned int n, unsigned int m, double _Complex* x, double _Complex* y, double _Complex* z);
int mat_croots_newtonf(unsigned int n, unsigned int m, float _Complex* x, float _Complex* y, float _Complex* z);
int mat_roots_fft(unsigned int n, double* x, double _Complex* y);
int mat_roots_fftf(unsigned int n, float* x, float _Complex* y);
int mat_croots_fft(unsigned int n, double _Complex* x, double _Complex* y);
int mat_croots_fftf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_sort(unsigned int n, double* x, double* y);
int mat_sortf(unsigned int n, float* x, float* y);
int mat_magsort(unsigned int n, double* x, double* y);
int mat_magsortf(unsigned int n, float* x, float* y);
int mat_cmagsort(unsigned int n, double _Complex* x, double _Complex* y);
int mat_cmagsortf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_cangsort(unsigned int n, double _Complex* x, double _Complex* y);
int mat_cangsortf(unsigned int n, float _Complex* x, float _Complex* y);
int mat_unique(unsigned int n, double* x, double* y, double gap);
int mat_uniquef(unsigned int n, float* x, float* y, float gap);
int mat_cunique(unsigned int n, double _Complex* x, double _Complex* y, double gap);
int mat_cuniquef(unsigned int n, float _Complex* x, float _Complex* y, float gap);
int mat_set(unsigned int n, double x, double* y);
int mat_setf(unsigned int n, float x, float* y);
int mat_cset(unsigned int n, double _Complex x, double _Complex* y);
int mat_csetf(unsigned int n, float _Complex x, float _Complex* y);
int mat_linspace(unsigned int n,double start, double stop, double* x);
int mat_linspacef(unsigned int n,float start, float stop, float* x);
int mat_clinspace(unsigned int n, double _Complex start, double _Complex stop, double _Complex* x);
int mat_clinspacef(unsigned int n,float _Complex start, float _Complex stop, float _Complex* x);
int mat_logspace(unsigned int n,double start, double stop, double* x);
int mat_logspacef(unsigned int n,float start, float stop, float* x);
int mat_clogspace(unsigned int n, double _Complex start, double _Complex stop, double _Complex* x);
int mat_clogspacef(unsigned int n,float _Complex start, float _Complex stop, float _Complex* x);
int mat_clinspace_pol(unsigned int n, double _Complex astart, double _Complex astop, double fstart, double fstop, double _Complex* x);
int mat_clinspace_polf(unsigned int n, float _Complex astart, float _Complex astop, float fstart, float fstop, float _Complex* x);
int mat_disp(unsigned int n, unsigned int m, double** x, char* format, ...);
int mat_dispf(unsigned int n, unsigned int m, float** x, char* format, ...);
int mat_cdisp(unsigned int n, unsigned int m, double _Complex** x, char* format, ...);
int mat_cdispf(unsigned int n, unsigned int m, float _Complex** x, char* format, ...);
int mat_quantise(unsigned int n, void* x, void* y, int flags, ...);
int mat_quantisef(unsigned int n, void* x, void* y, int flags, ...);
int mat_cquantise(unsigned int n, void* x, void* y, int flags, ...);
int mat_cquantisef(unsigned int n, void* x, void* y, int flags, ...);
int mat_fminbnd(double (*f)(double, void*), double xmin, double xmax, void* p, double* x);
int mat_fminbndf(float (*f)(float, void*), float xmin, float xmax, void* p, float* x);
# 64 "./filth.h" 2
# 1 "./filterbank.h" 1
# 38 "./filterbank.h"
typedef struct fbk_s{
unsigned int i;
unsigned int ist;
unsigned int ost;
unsigned int ios;
unsigned int oos;
void* fixed;
void** dynamic;
int (*execute)(void*, void*, void*, void*, unsigned int, unsigned int);
void (*free_fixed)(void*);
void (*free_dynamic)(void*);
}fbk_t;
# 142 "./filterbank.h"
int fbk_ececute(fbk_t* fbk, void* x, void* y);
void fbk_free(fbk_t* fbk);
int fbk_create_adv(fbk_t* fbk, unsigned int i, unsigned int ist, unsigned int ost, unsigned int ios, unsigned int oos, int flags, ...);
int fbk_resample_outputsamples(fbk_t* fbk);
int fbk_create_halfband(unsigned int n, double* h0, double* h1, double* f0, double* f1, double fc);
# 65 "./filth.h" 2
# 40 "filter/iirtrans.c" 2
# 1 "./internal.h" 1
# 36 "./internal.h"
int mat_lp(int n, int m, double* c, double* x, double** B, double* b);
int mat_lp_adv(int n, int m, double* c, double* x, double** B, double* b, short* op);
int mat_qp(int n, int m, double** C, double* x, double** A, double* b);
# 41 "filter/iirtrans.c" 2
# 58 "filter/iirtrans.c"
int fth_zp2sos(unsigned int n, double _Complex* z, double _Complex* p, double* num, double* den)
{
int i = 0;
if(!n || !num || !den || !z || !p)
{(*__errno_location ()) = 22; return -1;};
if(n&0x1){
num[0] = 0.0;
num[1] = z[0]==0.0?0.0:1.0;
num[2] = z[0]==0.0?1.0:-z[0];
den[0] = 0.0;
den[1] = p[0]==0.0?0.0:1.0;
den[2] = p[0]==0.0?1.0:-p[0];
i++;
num += 3;
den += 3;
}
while(i<n){
if(0.0!=__imag__(z[i])){
double a = __real__(z[i]);
double b = __imag__(z[i]);
num[0] = 1.0;
num[1] = -2.0*a;
num[2] = a*a + b*b;
}
else{
num[0] = 0.0;
num[1] = z[i]==0.0?0.0:1.0;
num[2] = z[i]==0.0?1.0:-z[i];
}
if(0.0!=__imag__(p[i])){
double a = __real__(p[i]);
double b = __imag__(p[i]);
den[0] = 1.0;
den[1] = -2.0*a;
den[2] = a*a + b*b;
}
else{
den[0] = 0.0;
den[1] = p[i]==0.0?0.0:1.0;
den[2] = p[i]==0.0?1.0:-p[i];
}
i+=2;
num += 3;
den += 3;
}
return 0;
}
# 124 "filter/iirtrans.c"
int fth_sos2zp(unsigned int n, double* num, double* den, double* g, double _Complex* z, double _Complex* p)
{
int i = 0;
int rv = 0;
if(!n || !num || !den || !z || !p || !g)
{(*__errno_location ()) = 22; return -1;};
if(n&0x1){
if(0.0 != num[1]){
z[i] = -num[2]/num[1];
g[0] = g[0]*num[1];
}
else{
z[i] = 0.0;
g[0] = g[0]*num[2];
}
if(0.0 != den[1]){
p[i] = -den[2]/den[1];
g[0] = g[0]/den[1];
}
else{
p[i] = 0.0;
g[0] = g[0]/den[2];
}
i++;
num += 3;
den += 3;
}
while(i<n){
if(0.0!=num[0]){
if(0 != (rv = mat_roots_quad(num,&z[i])))
break;
g[0] = g[0]*num[0];
}
else{
if(0.0 != num[1]){
z[i] = -num[2]/num[1];
g[0] = g[0]*num[1];
}
else{
z[i] = 0.0;
g[0] = g[0]*num[2];
}
}
if(0.0!=den[0]){
if(0 != (rv = mat_roots_quad(den,&p[i])))
break;
g[0] = g[0]/den[0];
}
else{
if(0.0 != den[1]){
p[i] = -den[2]/den[1];
g[0] = g[0]/den[1];
}
else{
p[i] = 0.0;
g[0] = g[0]/den[2];
}
}
i+=2;
num += 3;
den += 3;
}
return rv;
}
# 212 "filter/iirtrans.c"
int fth_poly2zp(unsigned int n, double* b, double* a, double* g, double _Complex* z, double _Complex* p)
{
int rv = 0;
int i = n;
if(!n || !a || !b || !z || !p || !g)
{(*__errno_location ()) = 22; return -1;};
if(0 == (rv = mat_roots_fft(n,b,z)))
rv = mat_roots_fft(n,a,p);
if(0==rv){
double _Complex* pt = n&0x1? &p[1] : p;
double _Complex* zt = n&0x1? &z[1] : z;
int j = 0;
if(!a[0])
{(*__errno_location ()) = 22; return -1;};
g[0] = g[0]*b[0]/a[0];
if(n&0x1){
double rr;
for(i=0 ; 0.0!=__imag__(z[i]) ; i++);
rr = z[i];
memmove(zt, z, i*sizeof(double _Complex));
z[0] = rr;
for(i=0 ; 0.0!=__imag__(p[i]) ; i++);
rr = p[i];
memmove(pt, p, i*sizeof(double _Complex));
p[0] = rr;
}
mat_cangsort(n&~0x1,pt,pt);
mat_cangsort(n&~0x1,zt,zt);
for(i=n/2-1,j=n-2;i>=0;i--,j-=2){
double rt = __real__(pt[i]);
double it = fabs(__imag__(pt[i]));
p[j] = rt + (__extension__ 1.0iF)*it;
p[j+1] = rt - (__extension__ 1.0iF)*it;
rt = __real__(zt[i]);
it = fabs(__imag__(zt[i]));
z[j] = rt + (__extension__ 1.0iF)*it;
z[j+1] = rt - (__extension__ 1.0iF)*it;
}
}
return rv;
}
# 285 "filter/iirtrans.c"
int fth_zp2poly(unsigned int n, double _Complex* z, double _Complex* p, double* g, double* b, double* a)
{
int i;
int rv = 0;
if(!n || !b || !a || !z || !p)
{(*__errno_location ()) = 22; return -1;};
if(0 == (rv = mat_poly_fft(n,z,b)))
rv = mat_poly_fft(n,p,a);
if(fabs(a[0])<10.0*2.2204460492503131e-16)
{(*__errno_location ()) = 22; return -1;};
for(i=0;fabs(b[i])<10.0*2.2204460492503131e-16;i++)
b[i]=0.0;
g[0] = g[0]*b[i]/a[0];
mat_smult(n+1,1.0/b[i],b,b);
mat_smult(n+1,1.0/a[0],b,b);
return rv;
}
# 328 "filter/iirtrans.c"
int fth_sos2poly(unsigned int n, double* num, double* den, double* g, double* b, double* a)
{
int i = 0;
if(!n || !num || !den || !g || !a || !b)
{(*__errno_location ()) = 22; return -1;};
if(n&0x1){
memcpy(b,&num[1],2*sizeof(double));
memcpy(a,&den[1],2*sizeof(double));
num+=3;
den+=3;
i++;
}
else{
a[0] = 1.0;
b[0] = 1.0;
}
while(i<n){
mat_conv_fft(3,i+1,den,a,a,((void *)0));
mat_conv_fft(3,i+1,num,b,b,((void *)0));
num+=3;
den+=3;
i+=2;
}
if(fabs(a[0])<10.0*2.2204460492503131e-16)
{(*__errno_location ()) = 22; return -1;};
for(i=0;fabs(b[i])<10.0*2.2204460492503131e-16;i++)
b[i]=0.0;
g[0] = g[0]*b[i]/a[0];
mat_smult(n+1,1.0/b[i],b,b);
mat_smult(n+1,1.0/a[0],b,b);
return 0;
}
# 388 "filter/iirtrans.c"
int fth_poly2sos(unsigned int n, double* b, double* a, double* g, double* num, double* den)
{
double _Complex* z = ((void *)0);
double _Complex* p = ((void *)0);
int rv = 0;
if(!n || !num || !den || !a || !b)
{(*__errno_location ()) = 22; return -1;};
if((((void *)0) == (z = calloc(n,sizeof(double _Complex)))) ||
(((void *)0) == (p = calloc(n,sizeof(double _Complex)))))
return -1;
if(0 != (rv = fth_poly2zp(n,a,b,g,z,p))){
rv = fth_zp2sos(n, z, p, num, den);
}
free(z);
free(p);
return rv;
}
# 434 "filter/iirtrans.c"
int fth_slp2lp(unsigned int n, double* num, double* den, double fc, double* g, double* numt, double* dent)
{
int i;
if(!n || !num || !den || !g || !numt || !dent || fc<0.0)
{(*__errno_location ()) = 22; return -1;};
if(n&0x1){
if(fabs(num[0]) < 2.2204460492503131e-16){
g[0] = g[0]*fc*num[2]/den[1];
numt[0] = 0.0;
numt[1] = 0.0;
numt[2] = 1.0;
}
else{
g[0] = g[0]*num[1]/den[1];
numt[2] = fc*num[2]/num[1];
numt[1] = 1.0;
numt[0] = 0.0;
}
dent[2] = fc*den[2]/den[1];
dent[1] = 1.0;
dent[0] = 0.0;
num += 3; numt += 3;
den += 3; dent += 3;
}
for(i=0;i<n/2;i++){
if(fabs(num[0]) < 2.2204460492503131e-16){
if(fabs(num[1]) < 2.2204460492503131e-16){
g[0] = g[0]*fc*fc*num[2]/den[0];
numt[0] = 0.0;
numt[1] = 0.0;
numt[2] = 1.0;
}
else{
g[0] = g[0]*fc*num[1]/den[0];
numt[0] = 0.0;
numt[1] = 1.0;
numt[2] = fc*num[2]/num[1];
}
}
else{
g[0] = g[0]*num[0]/den[0];
numt[1] = fc*num[1]/num[0];
numt[2] = fc*fc*num[2]/num[0];
numt[0] = 1.0;
}
dent[1] = fc*den[1]/den[0];
dent[2] = fc*fc*den[2]/den[0];
dent[0] = 1.0;
num += 3; numt += 3;
den += 3; dent += 3;
}
return 0;
}
# 511 "filter/iirtrans.c"
int fth_slp2hp(unsigned int n, double* num, double* den, double fc, double* g, double* numt, double* dent)
{
int i;
if(!n || !num || !den || !g || !numt || !dent || fc < 0.0)
{(*__errno_location ()) = 22; return -1;};
if(n&0x1){
g[0] = g[0]*num[2]/den[2];
numt[2] = fc*num[1]/num[2];
numt[1] = 1.0;
numt[0] = 0.0;
dent[2] = fc*den[1]/den[2];
dent[1] = 1.0;
dent[0] = 0.0;
num += 3; numt += 3;
den += 3; dent += 3;
}
for(i=0;i<n/2;i++){
g[0] = g[0]*num[2]/den[2];
numt[1] = fc*num[1]/num[2];
numt[2] = fc*fc*num[0]/num[2];
numt[0] = 1.0;
dent[1] = fc*den[1]/den[2];
dent[2] = fc*fc*den[0]/den[2];
dent[0] = 1.0;
num += 3; numt += 3;
den += 3; dent += 3;
}
return 0;
}
static int sos_lp2bp(double* p, double f, double fi, double* pt)
{
double _Complex rbp[4];
double pbp[5];
int rv;
if(fabs(p[0]) < 2.2204460492503131e-16){
memset(pt,0,6*sizeof(double));
pt[1] = 1.0;
pt[4] = 1.0;
return 0;
}
pbp[0] = 1.0;
pbp[1] = p[1]/(p[0]*f);
pbp[2] = p[2]/(p[0]*f*f)+2.0*fi;
pbp[3] = p[1]/(p[0]*f)*fi;
pbp[4] = fi*fi;
if(0 != (rv = mat_roots_quart(pbp,rbp)))
return rv;
pt[0] = 1.0;
pt[1] = -2.0*__real__(rbp[0]);
pt[2] = rbp[0]*rbp[1];
pt[3] = 1.0;
pt[4] = -2.0*__real__(rbp[2]);
pt[5] = rbp[2]*rbp[3];
return 0;
}
# 600 "filter/iirtrans.c"
int fth_slp2bp(unsigned int n, double* num, double* den, double fl, double fh, double* g, double* numt, double* dent)
{
double f,fi;
int i,rv;
if(!n || !num || !den ||!g || !numt || !dent || fl<=0.0 || fh<=0.0 || fh<=fl)
{(*__errno_location ()) = 22; return -1;};
f=1.0/(fh-fl);
fi=fl*fh;
if(n&0x1){
if(fabs(num[1]) < 2.2204460492503131e-16){
g[0] = g[0]*num[2]/(f*den[1]);
numt[0] = 0.0;
numt[1] = 1.0;
numt[2] = 0.0;
}
else{
g[0] = g[0]*num[1]/den[1];
numt[0] = 1.0;
numt[1] = num[2]/(f*num[1]);
numt[2] = fi;
}
dent[0] = 1.0;
dent[1] = den[2]/(f*den[1]);
dent[2] = fi;
num+=3; numt+=3;
den+=3; dent+=3;
}
for(i=0;i<n/2;i++){
if(fabs(num[0]) < 2.2204460492503131e-16)
g[0] = g[0]*num[2]/(f*f*den[0]);
else
g[0] = g[0]*num[0]/den[0];
if(0 != (rv = sos_lp2bp(num, f, fi, numt)))
return rv;
if(0 != (rv = sos_lp2bp(den, f, fi, dent)))
return rv;
num+=3; numt+=6;
den+=3; dent+=6;
}
return 0;
}
static int sos_lp2bs(double* p, double f, double fi, double* pt)
{
double _Complex rbs[4];
double pbs[5];
int rv;
pbs[0] = 1.0;
pbs[1] = p[1]/p[2]*f;
pbs[2] = p[0]/p[2]*f*f+2.0*fi;
pbs[3] = p[1]/p[2]*fi*f;
pbs[4] = fi*fi;
if(0 != (rv = mat_roots_quart(pbs,rbs)))
return rv;
pt[0] = 1.0;
pt[1] = -2.0*__real__(rbs[0]);
pt[2] = rbs[0]*rbs[1];
pt[3] = 1.0;
pt[4] = -2.0*__real__(rbs[2]);
pt[5] = rbs[2]*rbs[3];
return 0;
}
# 694 "filter/iirtrans.c"
int fth_slp2bs(unsigned int n, double* num, double* den, double fl, double fh, double* g, double* numt, double* dent)
{
double f,fi;
int i,rv;
if(!n || !num || !den ||!g || !numt || !dent || fl<=0.0 || fh<=0.0 || fh<=fl)
{(*__errno_location ()) = 22; return -1;};
f=fh-fl;
fi=fl*fh;
if(n&0x1){
g[0] = g[0]*num[2]/den[2];
numt[0] = 1.0;
numt[1] = f*num[1]/num[2];
numt[2] = fi;
dent[0] = 1.0;
dent[1] = f*den[1]/den[2];
dent[2] = fi;
num+=3; numt+=3;
den+=3; dent+=3;
}
for(i=0;i<n/2;i++){
g[0] = g[0]*num[2]/den[2];
if(0 != (rv = sos_lp2bs(num, f, fi, numt)))
return rv;
if(0 != (rv = sos_lp2bs(den, f, fi, dent)))
return rv;
num+=3; numt+=6;
den+=3; dent+=6;
}
return 0;
}
# 768 "filter/iirtrans.c"
int fth_bilinear(unsigned int n, double* num, double* den, double Q, double fc, double *g, double *numt, double* dent)
{
if(!n || !num || !den || !g || !numt || !dent ||
fc>0.5 || fc<0.0 || Q>1000.0 || Q< 1.0)
{(*__errno_location ()) = 22; return -1;};
return fth_bilinear_adv(n, num, den, Q, 1.0, 1.0, fc, g, numt, dent);
}
# 810 "filter/iirtrans.c"
int fth_bilinear_adv(unsigned int n, double* num, double* den, double Q, double f, double fs, double fz, double *g, double *numt, double* dent)
{
int i=0;
double wc;
if(!n || !num || !den || !g || !numt || !dent ||
f<0.0 || fs<0.0 || fz>fs/2.0 || fz<0.0 || Q>1000.0 || Q< 1.0)
{(*__errno_location ()) = 22; return -1;};
wc = f/tan(3.14159265358979323846*fz/fs);
if(n&0x1){
g[0] = g[0]*(num[2] + num[1]*wc)/(den[2] + den[1]*wc);
double t = (num[1]*wc - num[2])/(num[1]*wc + num[2]);
numt[0] = 0.0;
numt[1] = t==0.0?0.0:1.0;
numt[2] = t==0.0?1.0:-t;
t = (den[1]*wc - den[2])/(den[1]*wc + den[2]);
dent[0] = 0.0;
dent[1] = t==0.0?0.0:1.0;
dent[2] = t==0.0?1.0:-t;
i++;
den+=3;
num+=3;
dent+=3;
numt+=3;
}
while(i<n){
double nt[3];
double dt[3];
double kn;
double kd;
memcpy(nt, num, 3*sizeof(double));
memcpy(dt, den, 3*sizeof(double));
dt[1]/=Q;
nt[1] *= wc;
nt[0] *= wc*wc;
dt[1] *= wc;
dt[0] *= wc*wc;
kd = dt[0] + dt[1] + dt[2];
kn = nt[0] + nt[1] + nt[2];
numt[2] = (nt[0] - nt[1] + nt[2])/kn;
numt[1] = (2.0*nt[2] - 2.0*nt[0])/kn;
numt[0] = 1.0;
dent[2] = (dt[0] - dt[1] + dt[2])/kd;
dent[1] = (2.0*dt[2] - 2.0*dt[0])/kd;
dent[0] = 1.0;
g[0] = g[0]*kn/kd;
i += 2;
num += 3;
den += 3;
numt += 3;
dent += 3;
}
return 0;
}
Cheers,
//Anders
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17-2-686
Locale: LANG=en_GB, LC_CTYPE=sv_SE (charmap=ANSI_X3.4-1968) (ignored: LC_ALL set to C)
Versions of packages gcc-4.1 depends on:
ii binutils 2.17-3 The GNU assembler, linker and bina
ii cpp-4.1 4.1.1-13 The GNU C preprocessor
ii gcc-4.1-base 4.1.1-13 The GNU Compiler Collection (base
ii libc6 2.3.6.ds1-4 GNU C Library: Shared libraries
ii libgcc1 1:4.1.1-13 GCC support library
ii libssp0 4.1.1-13 GCC stack smashing protection libr
Versions of packages gcc-4.1 recommends:
ii libc6-dev 2.3.6.ds1-4 GNU C Library: Development Librari
pn libmudflap0-dev <none> (no description available)
-- no debconf information
--- End Message ---