home *** CD-ROM | disk | FTP | other *** search
- r
- o.qrfactor: h.machine
- o.qrfactor: h.meminfo
- o.schur: c.schur
- o.schur: h.matrix
- o.schur: h.machine
- o.schur: h.err
- o.schur: h.machine
- o.schur: h.meminfo
- o.schur: h.matrix2
- o.schur: h.matrix
- o.solve: c.solve
- o.solve: h.matrix2
- o.solve: h.matrix
- o.solve: h.machine
- o.solve: h.err
- o.solve: h.machine
- o.solve: h.meminfo
- o.sparse: c.sparse
- o.sparse: h.sparse
- o.sparse: h.matrix
- o.sparse: h.machine
- o.sparse: h.err
- o.sparse: h.machine
- o.sparse: h.meminfo
- o.sparseio: c.sparseio
- o.sparseio: h.sparse
- o.sparseio: h.matrix
- o.sparseio: h.machine
- o.sparseio: h.err
- o.sparseio: h.machine
- o.sparseio: h.meminfo
- o.spbkp: c.spbkp
- o.spbkp: h.matrix
- o.spbkp: h.machine
- o.spbkp: h.err
- o.spbkp: h.machine
- o.spbkp: h.meminfo
- o.spbkp: h.sparse
- o.spbkp: h.matrix
- o.spbkp: h.sparse2
- o.spbkp: h.sparse
- o.spchfctr: c.spchfctr
- o.spchfctr: h.matrix
- o.spchfctr: h.machine
- o.spchfctr: h.err
- o.spchfctr: h.machine
- o.spchfctr: h.meminfo
- o.spchfctr: h.sparse
- o.spchfctr: h.matrix
- o.spchfctr: h.sparse2
- o.spchfctr: h.sparse
- o.splufctr: c.splufctr
- o.splufctr: h.sparse2
- o.splufctr: h.sparse
- o.splufctr: h.matrix
- o.splufctr: h.machine
- o.splufctr: h.err
- o.splufctr: h.machine
- o.splufctr: h.meminfo
- o.sprow: c.sprow
- o.sprow: h.sparse
- o.sprow: h.matrix
- o.sprow: h.machine
- o.sprow: h.err
- o.sprow: h.machine
- o.sprow: h.meminfo
- o.spswap: c.spswap
- o.spswap: h.matrix
- o.spswap: h.machine
- o.spswap: h.err
- o.spswap: h.machine
- o.spswap: h.meminfo
- o.spswap: h.sparse
- o.spswap: h.matrix
- o.spswap: h.sparse2
- o.spswap: h.sparse
- o.submat: c.submat
- o.submat: h.matrix
- o.submat: h.machine
- o.submat: h.err
- o.submat: h.machine
- o.submat: h.meminfo
- o.svd: c.svd
- o.svd: h.matrix
- o.svd: h.machine
- o.svd: h.err
- o.svd: h.machine
- o.svd: h.meminfo
- o.svd: h.matrix2
- o.svd: h.matrix
- o.symmeig: c.symmeig
- o.symmeig: h.matrix
- o.symmeig: h.machine
- o.symmeig: h.err
- o.symmeig: h.machine
- o.symmeig: h.meminfo
- o.symmeig: h.matrix2
- o.symmeig: h.matrix
- o.update: c.update
- o.update: h.matrix
- o.update: h.machine
- o.update: h.err
- o.update: h.machine
- o.update: h.meminfo
- o.update: h.matrix2
- o.update: h.matrix
- o.vecop: c.vecop
- o.vecop: h.matrix
- o.vecop: h.machine
- o.vecop: h.err
- o.vecop: h.machine
- o.vecop: h.meminfo
- o.zcopy: c.zcopy
- o.zcopy: h.zmatrix
- o.zcopy: h.matrix
- o.zcopy: h.machine
- o.zcopy: h.err
- o.zcopy: h.machine
- o.zcopy: h.meminfo
- o.zfunc: c.zfunc
- o.zfunc: h.zmatrix
- o.zfunc: h.matrix
- o.zfunc: h.machine
- o.zfunc: h.err
- o.zfunc: h.machine
- o.zfunc: h.meminfo
- o.zgivens: c.zgivens
- o.zgivens: h.zmaKPsolve(MAT *A,PERM *pivot,PERM *blocks,VEC *b,VEC *x),
- *CHsolve(MAT *A,VEC *b,VEC *x),
- *LDLsolve(MAT *A,VEC *b,VEC *x),
- *LUsolve(MAT *A,PERM *pivot,VEC *b,VEC *x),
- *_Qsolve(MAT *A,VEC *,VEC *,VEC *, VEC *),
- *QRsolve(MAT *A,VEC *,VEC *b,VEC *x),
- *QRTsolve(MAT *A,VEC *,VEC *b,VEC *x),
-
-
- /* Triangular equations solve routines;
- U for upper triangular, L for lower traingular, D for diagonal
- if diag_val == 0.0 use that values in the matrix */
-
- *Usolve(MAT *A,VEC *b,VEC *x,double diag_val),
- *Lsolve(MAT *A,VEC *b,VEC *x,double diag_val),
- *Dsolve(MAT *A,VEC *b,VEC *x),
- *LTsolve(MAT *A,VEC *b,VEC *x,double diag_val),
- *UTsolve(MAT *A,VEC *b,VEC *x,double diag_val),
- *LUTsolve(MAT *A,PERM *,VEC *,VEC *),
- *QRCPsolve(MAT *QR,VEC *diag,PERM *pivot,VEC *b,VEC *x);
-
- extern BAND *bdLUfactor(BAND *A,PERM *pivot),
- *bdLDLfactor(BAND *A);
- extern VEC *bdLUsolve(BAND *A,PERM *pivot,VEC *b,VEC *x),
- *bdLDLsolve(BAND *A,VEC *b,VEC *x);
-
-
-
- extern VEC *hhvec(VEC *,u_int,Real *,VEC *,Real *);
- extern VEC *hhtrvec(VEC *,double,u_int,VEC *,VEC *);
- extern MAT *hhtrrows(MAT *,u_int,u_int,VEC *,double);
- extern MAT *hhtrcols(MAT *,u_int,u_int,VEC *,double);
-
- extern void givens(double,double,Real *,Real *);
- extern VEC *rot_vec(VEC *,u_int,u_int,double,double,VEC *); /* in situ */
- extern MAT *rot_rows(MAT *,u_int,u_int,double,double,MAT *); /* in situ */
- extern MAT *rot_cols(MAT *,u_int,u_int,double,double,MAT *); /* in situ */
-
-
- /* eigenvalue routines */
-
- /* compute eigenvalues of tridiagonal matrix
- with diagonal entries a[i], super & sub diagonal entries
- b[i]; eigenvectors stored in Q (if not NULL) */
- extern VEC *trieig(VEC *a,VEC *b,MAT *Q),
- /* sets out to be vector of eigenvectors; eigenvectors
- stored in Q (if not NULL). A is unchanged */
- *symmeig(MAT *A,MAT *Q,VEC *out);
-
- /* computes real Schur form = Q^T.A.Q */
- extern MAT *schur(MAT *A,MAT *Q);
- /* computes real and imaginary parts of the eigenvalues
- of A after schur() */
- extern void schur_evals(MAT *A,VEC *re_part,VEC *im_part);
- /* computes real and imaginary parts of the eigenvectors
- of A after schur() */
- extern MAT *schur_vecs(MAT *T,MAT *Q,MAT *X_re,MAT *X_im);
-
-
- /* singular value decomposition */
-
- /* computes singular values of bi-diagonal matrix with
- diagonal entries a[i] and superdiagonal entries b[i];
- singular vectors stored in U and V (if not NULL) */
- VEC *bisvd(VEC *a,VEC *b,MAT *U,MAT *V),
- /* sets out to be vector of singular values;
- singular vectors stored in U and V */
- *svd(MAT *A,MAT *U,MAT *V,VEC *out);
-
- /* matrix powers and exponent */
- MAT *_m_pow(MAT *,int,MAT *,MAT *);
- MAT *m_pow(MAT *,int, MAT *);
- MAT *m_exp(MAT *,double,MAT *);
- MAT *_m_exp(MAT *,double,MAT *,int *,int *);
- MAT *m_poly(MAT *,VEC *,MAT *);
-
- /* FFT */
- void fft(VEC *,VEC *);
- void ifft(VEC *,VEC *);
-
- #endif
-
-
- #endif
- FileDataŵmeminfo 4 EÿÿÿÀ·? OÔ
- /**************************************************************************
- **
- ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved.
- **
- ** Meschach Library
- **
- ** This Meschach Library is provided "as is" without any express
- ** or implied warranty of any kind with respect to this software.
- ** In particular the authors shall not be liable for any direct,
- ** indirect, special, incidental or consequential damages arising
- ** in any way from use of the software.
- **
- ** Everyone is granted permission to copy, modify and redistribute this
- ** Meschach Library, provided:
- ** 1. All copies contain this copyright notice.
- ** 2. All modified copies shall carry a notice stating who
- ** made the last modification and the date of such modification.
- ** 3. No charge is made for this software or works derived from it.
- ** This clause shall not be construed as constraining other software
- ** distributed on the same medium as this software, nor is a
- ** distribution fee considered a charge.
- **
- ***************************************************************************/
-
-
- /* meminfo.h 26/08/93 */
- /* changed 11/12/93 */
-
-
- #ifndef MEM_INFOH
- #define MEM_INFOH
-
-
-
- /* for hash table in mem_stat.c */
- /* Note: the hash size should be a prime, or at very least odd */
- #define MEM_HASHSIZE 509
- #define MEM_HASHSIZE_FILE "meminfo.h"
-
-
- /* default: memory information is off */
- /* set it to 1 if you want it all the time */
- #define MEM_SWITCH_ON_DEF 0
-
-
- /* available standard types */
- #define TYPE_NULL (-1)
- #define TYPE_MAT 0
- #define TYPE_BAND 1
- #define TYPE_PERM 2
- #define TYPE_VEC 3
- #define TYPE_IVEC 4
-
- #ifdef SPARSE
- #define TYPE_ITER 5
- #define TYPE_SPROW 6
- #define TYPE_SPMAT 7
- #endif
-
- #ifdef COMPLEX
- #ifdef SPARSE
- #define TYPE_ZVEC 8
- #define TYPE_ZMAT 9
- #else
- #define TYPE_ZVEC 5
- #define TYPE_ZMAT 6
- #endif
- #endif
-
- /* structure for memory information */
- typedef struct {
- long bytes; /* # of allocated bytes for each type (summary) */
- int numvar; /* # of allocated variables for each type */
- } MEM_ARRAY;
-
-
-
- #ifdef ANSI_C
-
- int mem_info_is_on(void);
- int mem_info_on(int sw);
-
- long mem_info_bytes(int type,int list);
- int mem_info_numvar(int type,int list);
- void mem_info_file(FILE * fp,int list);
-
- void mem_bytes_list(int type,int old_size,int new_size,
- int list);
- void mem_numvar_list(int type, int num, int list);
-
- int mem_stat_reg_list(void **var,int type,int list);
- int mem_stat_mark(int mark);
- int mem_stat_free_list(int mark,int list);
- int mem_stat_show_mark(void);
- void mem_stat_dump(FILE *fp,int list);
- int mem_attach_list(int list,int ntypes,char *type_names[],
- int (*free_funcs[])(), MEM_ARRAY info_sum[]);
- int mem_free_vars(int list);
- int mem_is_list_attached(int list);
- void mem_dump_list(FILE *fp,int list);
- int mem_stat_reg_vars(int list,int type,...);
-
- #else
- int mem_info_is_on();
- int mem_info_on();
-
- long mem_info_bytes();
- int mem_info_numvar();
- void mem_info_file();
-
- void mem_bytes_list();
- void mem_numvar_list();
-
- int mem_stat_reg_list();
- int mem_stat_mark();
- int mem_stat_free_list();
- int mem_stat_show_mark();
- void mem_stat_dump();
- int mem_attach_list();
- int mem_free_vars();
- int mem_is_list_attached();
- void mem_dump_list();
- int mem_stat_reg_vars();
-
- #endif
-
- /* macros */
-
- #define mem_info() mem_info_file(stdout,0)
-
- #define mem_stat_reg(var,type) mem_stat_reg_list((void **)var,type,0)
- #define MEM_STAT_REG(var,type) mem_stat_reg_list((void **)&(var),type,0)
- #define mem_stat_free(mark) mem_stat_free_list(mark,0)
-
- #define mem_bytes(type,old_size,new_size) \
- mem_bytes_list(type,old_size,new_size,0)
-
- #define mem_numvar(type,num) mem_numvar_list(type,num,0)
-
-
- /* internal type */
-
- typedef struct {
- char **type_names; /* array of names of types (strings) */
- int (**free_funcs)(); /* array of functions for releasing types */
- unsigned ntypes; /* max number of types */
- MEM_ARRAY *info_sum; /* local array for keeping track of memory */
- } MEM_CONNECT;
-
- /* max number of lists of types */
- #define MEM_CONNECT_MAX_LISTS 5
-
-
- #endif
- FileDataŵoldnames
- Eÿÿÿpî?
- /**************************************************************************
- **
- ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved.
- **
- ** Meschach Library
- **
- ** This Meschach Library is provided "as is" without any express
- ** or implied warranty of any kind with respect to this software.
- ** In particular the authors shall not be liable for any direct,
- ** indirect, special, incidental or consequential damages arising
- ** in any way from use of the software.
- **
- ** Everyone is granted permission to copy, modify and redistribute this
- ** Meschach Library, provided:
- ** 1. All copies contain this copyright notice.
- ** 2. All modified copies shall carry a notice stating who
- ** made the last modification and the date of such modification.
- ** 3. No charge is made for this software or works derived from it.
- ** This clause shall not be construed as constraining other software
- ** distributed on the same medium as this software, nor is a
- ** distribution fee considered a charge.
- **
- ***************************************************************************/
-
-
- /* macros for names used in versions 1.0 and 1.1 */
- /* 8/11/93 */
-
-
- #ifndef OLDNAMESH
- #define OLDNAMESH
-
-
- /* type IVEC */
-
- #define get_ivec iv_get
- #define freeivec IV_FREE
- #define cp_ivec iv_copy
- #define fout_ivec iv_foutput
- #define out_ivec iv_output
- #define fin_ivec iv_finput
- #define in_ivec iv_input
- #define dump_ivec iv_dump
-
-
- /* type ZVEC */
-
- #define get_zvec zv_get
- #define freezvec ZV_FREE
- #define cp_zvec zv_copy
- #define fout_zvec zv_foutput
- #define out_zvec zv_output
- #define fin_zvec zv_finput
- #define in_zvec zv_input
- #define zero_zvec zv_zero
- #define rand_zvec zv_rand
- #define dump_zvec zv_dump
-
- /* type ZMAT */
-
- #define get_zmat zm_get
- #define freezmat ZM_FREE
- #define cp_zmat zm_copy
- #define fout_zmat zm_foutput
- #define out_zmat zm_output
- #define fin_zmat zm_finput
- #define in_zmat zm_input
- #define zero_zmat zm_zero
- #define rand_zmat zm_rand
- #define dump_zmat zm_dump
-
- /* types SPMAT */
-
- #define sp_mat SPMAT
- #define sp_get_mat sp_get
- #define sp_free_mat sp_free
- #define sp_cp_mat sp_copy
- #define sp_cp_mat2 sp_copy2
- #define sp_fout_mat sp_foutput
- #define sp_fout_mat2 sp_foutput2
- #define sp_out_mat sp_output
- #define sp_out_mat2 sp_output2
- #define sp_fin_mat sp_finput
- #define sp_in_mat sp_input
- #define sp_zero_mat sp_zero
- #define sp_dump_mat sp_dump
-
-
- /* type SPROW */
-
- #define sp_row SPROW
- #define sp_get_idx sprow_idx
- #define row_xpd sprow_xpd
- #define sp_get_row sprow_get
- #define row_set_val sprow_set_val
- #define fout_row sprow_foutput
- #define _row_mltadd sprow_mltadd
- #define sp_row_copy sprow_copy
- #define sp_row_merge sprow_merge
- #define sp_row_ip sprow_ip
- #define sp_row_sqr sprow_sqr
-
-
- /* type MAT */
-
- #define get_mat m_get
- #define freemat M_FREE
- #define cp_mat m_copy
- #define fout_mat m_foutput
- #define out_mat m_output
- #define fin_mat m_finput
- #define in_mat m_input
- #define zero_mat m_zero
- #define id_mat m_ident
- #define rand_mat m_rand
- #define ones_mat m_ones
- #define dump_mat m_dump
-
- /* type VEC */
-
- #define get_vec v_get
- #define freevec V_FREE
- #define cp_vec v_copy
- #define fout_vec v_foutput
- #define out_vec v_output
- #define fin_vec v_finput
- #define in_vec v_input
- #define zero_vec v_zero
- #define rand_vec v_rand
- #define ones_vec v_ones
- #define dump_vec v_dump
-
-
- /* type PERM */
-
- #define get_perm px_get
- #define freeperm PX_FREE
- #define cp_perm px_copy
- #define fout_perm px_foutput
- #define out_perm px_output
- #define fin_perm px_finput
- #define in_perm px_input
- #define id_perm px_ident
- #define px_id px_ident
- #define trans_px px_transp
- #define sign_px px_sign
- #define dump_perm px_dump
-
- #endif
- FileDataŵOmachine ® Eÿÿÿ\p3 •R/* machine.h. Generated automatically by configure. */
- /* Any machine specific stuff goes here */
- /* Add details necessary for your own installation here! */
-
- /* RCS id: $Id: $ */
-
- /* This is for use with "configure" -- if you are not using configure
- then use machine.van for the "vanilla" version of machine.h */
-
- /* Note special macros: ANSI_C (ANSI C syntax)
- SEGMENTED (segmented memory machine e.g. MS-DOS)
- MALLOCDECL (declared if malloc() etc have
- been declared) */
-
- #define const
-
- /* #undef MALLOCDECL */
- #define NOT_SEGMENTED 1
- #define HAVE_MEMORY_H 1
- /* #undef HAVE_COMPLEX_H */
- #define HAVE_MALLOC_H 1
- #define STDC_HEADERS 1
- #define HAVE_BCOPY 1
- #define HAVE_BZERO 1
- #define CHAR0ISDBL0 1
- #define WORDS_BIGENDIAN 1
- #define U_INT_DEF 1
- #define VARARGS 1
- #define HAVE_PROTOTYPES 1
- /* #undef HAVE_PROTOTYPES_IN_STRUCT */
-
- /* for inclusion into C++ files */
- #ifdef __cplusplus
- #define ANSI_C 1
- #ifndef HAVE_PROTOTYPES
- #define HAVE_PROTOTYPES 1
- #endif
- #ifndef HAVE_PROTOTYPES_IN_STRUCT
- #define HAVE_PROTOTYPES_IN_STRUCT 1
- #endif
- #endif /* __cplusplus */
-
- /* example usage: VEC *PROTO(v_get,(int dim)); */
- #ifdef HAVE_PROTOTYPES
- #define PROTO(name,args) name args
- #else
- #define PROTO(name,args) name()
- #endif /* HAVE_PROTOTYPES */
- #ifdef HAVE_PROTOTYPES_IN_STRUCT
- /* PROTO_() is to be used instead of PROTO() in struct's and typedef's */
- #define PROTO_(name,args) name args
- #else
- #define PROTO_(name,args) name()
- #endif /* HAVE_PROTOTYPES_IN_STRUCT */
-
- /* for basic or larger versions */
- #define COMPLEX 1
- #define SPARSE 1
-
- /* for lå pœå Pã