#include <stdarg.h>#include <gandalf/linalg/mat_gen.h>#include <gandalf/linalg/vec_gen.h>#include <gandalf/linalg/mat_symmetric.h>#include <gandalf/linalg/matvec_blas.h>#include <gandalf/linalg/matvec_clapack.h>#include <gandalf/linalg/clapack.h>#include <gandalf/linalg/cblas.h>#include <gandalf/common/allocate.h>#include <gandalf/common/misc_error.h>#include <gandalf/common/numerics.h>#include <gandalf/common/array.h>#include <gandalf/common/endian_io.h>Functions | |
| Gan_Bool | gan_mat_realloc_gen (Gan_Matrix *A, unsigned long rows, unsigned long cols) |
| void | gan_mat_free (Gan_Matrix *A) |
| Free a matrix. | |
| Gan_Matrix * | gan_mat_set_dims (Gan_Matrix *A, unsigned long rows, unsigned long cols) |
| Set dimensions of generic matrix. | |
| double | gan_mat_sumsqr (Gan_Matrix *A) |
| Returns squared Frobenius norm of generic rectangular matrix. | |
| double | gan_mat_Fnorm (Gan_Matrix *A) |
| Returns Frobenius norm of generic rectangular matrix. | |
| Gan_Matrix * | gan_mat_invert_q (Gan_Matrix *A, Gan_Matrix *B) |
| Inverts general square matrix. | |
| Gan_Matrix * | gan_mat_fill_va (Gan_Matrix *A, unsigned long rows, unsigned long cols,...) |
| Fill matrix from variable argument list. | |
| Gan_Matrix * | gan_mat_fill_vap (Gan_Matrix *A, unsigned long rows, unsigned long cols, va_list *aptr) |
| Fill matrix from variable argument list. | |
| Gan_Matrix * | gan_mat_fill_const_q (Gan_Matrix *A, unsigned long rows, unsigned long cols, double value) |
| Fill all elements of a matrix with the same value. | |
| Gan_Bool | gan_mat_read_va (Gan_Matrix *A, unsigned long rows, unsigned long cols,...) |
| Read elements of matrix from variable argument list. | |
| Gan_Matrix * | gan_mat_copy_q (Gan_Matrix *A, Gan_Matrix *B) |
| Copy matrix. | |
| Gan_Matrix * | gan_mat_scale_q (Gan_Matrix *A, double a, Gan_Matrix *B) |
| Multiply matrix by scalar. | |
| Gan_Matrix * | gan_mat_divide_q (Gan_Matrix *A, double a, Gan_Matrix *B) |
| Divide matrix by scalar. | |
| Gan_Matrix * | gan_mat_tpose_q (Gan_Matrix *A, Gan_Matrix *B) |
| Transpose matrix. | |
| Gan_Matrix * | gan_mat_add_gen (Gan_Matrix *A, Gan_TposeFlag A_tr, Gan_Matrix *B, Gan_TposeFlag B_tr, Gan_Matrix *C) |
| Add general size matrices. | |
| Gan_SquMatrix * | gan_mat_add_sym_gen (Gan_Matrix *A, Gan_TposeFlag A_tr, Gan_Matrix *B, Gan_TposeFlag B_tr, struct Gan_SquMatrix *C) |
| Add general size matrices producing a symmetric matrix. | |
| Gan_Matrix * | gan_mat_sub_gen (Gan_Matrix *A, Gan_TposeFlag A_tr, Gan_Matrix *B, Gan_TposeFlag B_tr, Gan_Matrix *C) |
| Subtract general size matrices. | |
| Gan_Vector * | gan_mat_multv_gen (Gan_Matrix *A, Gan_TposeFlag A_tr, Gan_Vector *x, Gan_Vector *y) |
| Multiply matrix and a vector. | |
| Gan_Matrix * | gan_mat_rmult_gen (Gan_Matrix *A, Gan_TposeFlag A_tr, Gan_Matrix *B, Gan_TposeFlag B_tr, Gan_Matrix *C) |
| Gan_SquMatrix * | gan_mat_rmult_sym_gen (Gan_Matrix *A, Gan_TposeFlag A_tr, Gan_Matrix *B, Gan_TposeFlag B_tr, struct Gan_SquMatrix *C) |
| Gan_Matrix * | gan_mat_insert_gen (Gan_Matrix *A, unsigned long rA, unsigned long cA, Gan_Matrix *B, Gan_TposeFlag B_tr, unsigned long rB, unsigned long cB, unsigned long rows, unsigned long cols) |
| Insert part of generic matrix in another generic matrix. | |
| Gan_Matrix * | gan_mat_insertv_gen (Gan_Matrix *A, unsigned long rA, unsigned long cA, Gan_Vector *x, Gan_TposeFlag x_tr, unsigned long rx, unsigned long size) |
| Insert part of column vector in a generic matrix. | |
| Gan_Matrix * | gan_mat_insertsym (Gan_Matrix *A, unsigned long rA, unsigned long cA, Gan_SquMatrix *B, unsigned long rB, unsigned long cB, unsigned long rows, unsigned long cols) |
| Insert part of symmetric matrix in a generic matrix. | |
| void | gan_mat_free_va (Gan_Matrix *A,...) |
Free a NULL-terminated variable argument list of matrices. | |
| Gan_Matrix * | gan_mat_form_gen (Gan_Matrix *A, unsigned long rows, unsigned long cols, double *data, size_t data_size) |
| Gan_Matrix * | gan_mat_extract_q (Gan_Matrix *A, unsigned long r0, unsigned long c0, unsigned long rows, unsigned long cols, Gan_Matrix *B) |
| Extracts rectangular part of matrix. | |
| Gan_Bool | gan_mat_fprint (FILE *fp, Gan_Matrix *A, const char *prefix, unsigned indent, const char *fmt) |
| Print matrix to file pointer. | |
| Gan_Matrix * | gan_mat_fscanf_q (FILE *fp, Gan_Matrix *A, char *prefix, int prefix_len) |
| Read matrix from file. | |
| Gan_Bool | gan_mat_fwrite (FILE *fp, Gan_Matrix *A, gan_ui32 magic_number) |
| Print matrix to binary file pointer. | |
| Gan_Matrix * | gan_mat_fread_q (FILE *fp, Gan_Matrix *A, gan_ui32 *magic_number) |
| Read matrix from file in binary format. | |
| void | gan_mat_db (Gan_Matrix *A) |
Part of: Gandalf Library
Revision: Last edited: Author:
Copyright: (c) 2000 Imagineer Software Limited
1.3-rc1