#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <gandalf/common/misc_defs.h>
#include <gandalf/linalg/linalg_defs.h>
#include <gandalf/linalg/vec_gen.h>
#include <gandalf/linalg/mat_gen.h>
Go to the source code of this file.
Classes | |
struct | Gan_SquMatrixFuncs |
Structure containing type-specific functions. More... | |
struct | Gan_SquMatrix |
Structure definition for double precision general size square matrix. More... | |
Typedefs | |
typedef Gan_SquMatrixFuncs | Gan_SquMatrixFuncs |
Structure containing type-specific functions. | |
typedef Gan_SquMatrix | Gan_SquMatrix |
Structure definition for double precision general size square matrix. | |
Functions | |
Gan_SquMatrix * | gan_squmat_alloc (Gan_SquMatrixType type, unsigned long size) |
Macro: Allocate and return a square matrix. | |
Gan_SquMatrix * | gan_squmat_form (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size) |
Macro: Form and return a square matrix. | |
Gan_SquMatrix * | gan_squmat_form_data (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size, double *data, size_t data_size) |
Macro: Form and return a square symmetric matrix. | |
Gan_Bool | gan_squmat_set_el (Gan_SquMatrix *A, unsigned row, unsigned col, double value) |
Macro: Set specific element of square matrix. | |
double | gan_squmat_get_el (const Gan_SquMatrix *A, unsigned row, unsigned col) |
Macro: Get specific element of square matrix. | |
Gan_Bool | gan_squmat_inc_el (Gan_SquMatrix *A, unsigned row, unsigned col, double value) |
Macro: Increment specific element of square matrix by given value. | |
Gan_Bool | gan_squmat_dec_el (Gan_SquMatrix *A, unsigned row, unsigned col, double value) |
Macro: Decrement specific element of square matrix by given value. | |
Gan_Bool | gan_squmat_fprint (FILE *fp, const Gan_SquMatrix *A, const char *prefix, int indent, const char *fmt) |
Macro: Print square matrix to file pointer. | |
Gan_Bool | gan_squmat_print (const Gan_SquMatrix *A, const char *prefix, int indent, const char *fmt) |
Macro: Print square matrix to standard output. | |
Gan_SquMatrix * | gan_squmat_fill_const_s (Gan_SquMatrixType type, unsigned long size, double value) |
Macro: Allocates a square matrix and fills it with a value. | |
Gan_SquMatrix * | gan_squmat_fill_zero_q (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size) |
Macro: Sets the size of square matrix, and fills it with zero. | |
Gan_SquMatrix * | gan_squmat_fill_zero_s (Gan_SquMatrixType type, unsigned long size) |
Macro: Allocates a square matrix and fills it with zero. | |
Gan_SquMatrix * | gan_squmat_copy_q (const Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Copy square matrix. | |
Gan_SquMatrix * | gan_squmat_copy_s (const Gan_SquMatrix *A) |
Macro: Copy square matrix. | |
Gan_SquMatrix * | gan_squmat_scale_q (Gan_SquMatrix *A, double a, Gan_SquMatrix *B) |
Macro: Multiply square matrix by scalar. | |
Gan_SquMatrix * | gan_squmat_scale_s (Gan_SquMatrix *A, double a) |
Macro: Multiply square matrix by scalar. | |
Gan_SquMatrix * | gan_squmat_scale_i (Gan_SquMatrix *A, double a) |
Macro: Multiply square matrix by scalar. | |
Gan_SquMatrix * | gan_squmat_divide_q (Gan_SquMatrix *A, double a, Gan_SquMatrix *B) |
Macro: Divide square matrix by scalar. | |
Gan_SquMatrix * | gan_squmat_divide_s (Gan_SquMatrix *A, double a) |
Macro: Divide square matrix by scalar. | |
Gan_SquMatrix * | gan_squmat_divide_i (Gan_SquMatrix *A, double a) |
Macro: Divide square matrix by scalar. | |
Gan_SquMatrix * | gan_squmat_negate_q (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Negate square matrix. | |
Gan_SquMatrix * | gan_squmat_negate_s (Gan_SquMatrix *A) |
Macro: Negate square matrix. | |
Gan_SquMatrix * | gan_squmat_negate_i (Gan_SquMatrix *A) |
Macro: Negate square matrix. | |
Gan_SquMatrix * | gan_squmat_add_q (Gan_SquMatrix *A, Gan_SquMatrix *B, Gan_SquMatrix *C) |
Macro: Add two square matrices. | |
Gan_SquMatrix * | gan_squmat_add_s (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Add two square matrices and return the result as a new matrix. | |
Gan_SquMatrix * | gan_squmat_add_i1 (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Add two square matrices and overwrite the first with the result. | |
Gan_SquMatrix * | gan_squmat_add_i2 (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Add two square matrices and overwrite the second with the result. | |
Gan_SquMatrix * | gan_squmat_increment (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Increment a square matrix with another square matrix. | |
Gan_SquMatrix * | gan_squmat_addT_q (Gan_SquMatrix *A, Gan_SquMatrix *B, Gan_SquMatrix *C) |
Macro: Add two square matrices, the second transposed. | |
Gan_SquMatrix * | gan_squmat_addT_s (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Add two square matrices, the second transposed. | |
Gan_SquMatrix * | gan_squmat_incrementT (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Increment a square matrix with the transpose of another square matrix. | |
Gan_SquMatrix * | gan_squmat_sub_q (Gan_SquMatrix *A, Gan_SquMatrix *B, Gan_SquMatrix *C) |
Macro: Subtract two square matrices and write result into a third. | |
Gan_SquMatrix * | gan_squmat_sub_s (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Subtract two square matrices and return the result as a new square matrix. | |
Gan_SquMatrix * | gan_squmat_sub_i1 (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Subtract two square matrices and overwrite the first with the result. | |
Gan_SquMatrix * | gan_squmat_sub_i2 (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Subtract two square matrices and overwrite the second with the result. | |
Gan_SquMatrix * | gan_squmat_decrement (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Decrement a square matrix with another square matrix. | |
Gan_SquMatrix * | gan_squmat_subT_q (Gan_SquMatrix *A, Gan_SquMatrix *B, Gan_SquMatrix *C) |
Macro: Subtract two square matrices, the second transposed. | |
Gan_SquMatrix * | gan_squmat_subT_s (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Subtract two square matrices, the second transposed. | |
Gan_SquMatrix * | gan_squmat_decrementT (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Decrement a square matrix with the transpose of another square matrix. | |
Gan_Vector * | gan_squmat_multv_q (const Gan_SquMatrix *A, Gan_Vector *x, Gan_Vector *y) |
Macro: Multiply square matrix by a vector, writing the result into another vector. | |
Gan_Vector * | gan_squmat_multv_s (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply square matrix by a vector, returning the result as a new vector. | |
Gan_Vector * | gan_squmat_multv_i (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply square matrix by a vector, overwriting the vector with the result. | |
Gan_Vector * | gan_squmatT_multv_q (const Gan_SquMatrix *A, Gan_Vector *x, Gan_Vector *y) |
Macro: Multiply the transpose of a square matrix by a vector. | |
Gan_Vector * | gan_squmatT_multv_s (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply transpose of square matrix by a vector. | |
Gan_Vector * | gan_squmatT_multv_i (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply transpose of square matrix by a vector. | |
Gan_Vector * | gan_squmatI_multv_q (const Gan_SquMatrix *A, Gan_Vector *x, Gan_Vector *y) |
Macro: Multiply inverse of square matrix by a vector. | |
Gan_Vector * | gan_squmatI_multv_s (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply inverse of square matrix by a vector. | |
Gan_Vector * | gan_squmatI_multv_i (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply inverse of square matrix by a vector. | |
Gan_Vector * | gan_squmatIT_multv_q (const Gan_SquMatrix *A, Gan_Vector *x, Gan_Vector *y) |
Macro: Multiply the inverse transpose of a square matrix by a vector. | |
Gan_Vector * | gan_squmatIT_multv_s (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply inverse transpose of square matrix by a vector. | |
Gan_Vector * | gan_squmatIT_multv_i (const Gan_SquMatrix *A, Gan_Vector *x) |
Macro: Multiply inverse transpose of square matrix by a vector. | |
Gan_Matrix * | gan_squmat_rmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply square matrix by generic matrix, and write result into a third. | |
Gan_Matrix * | gan_squmat_rmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply square matrix by generic matrix. | |
Gan_Matrix * | gan_squmat_rmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply square matrix by generic matrix. | |
Gan_Matrix * | gan_squmat_rmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmat_rmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmatT_rmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatT_rmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatT_rmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatT_rmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply transpose of square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmatT_rmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmatI_rmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply inverse of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatI_rmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply inverse of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatI_rmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply inverse of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatI_rmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply inverse of square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmatI_rmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply inverse of square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmatIT_rmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply inverse transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatIT_rmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply inverse transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatIT_rmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply inverse transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatIT_rmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply inverse transpose of square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmatIT_rmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply inverse transpose of square matrix by transpose of generic matrix. | |
Gan_Matrix * | gan_squmat_lmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply generic matrix by square matrix, and write result into a third. | |
Gan_Matrix * | gan_squmat_lmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by square matrix. | |
Gan_Matrix * | gan_squmat_lmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by square matrix. | |
Gan_Matrix * | gan_squmat_lmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply transpose of generic matrix by square matrix. | |
Gan_Matrix * | gan_squmat_lmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of generic matrix by square matrix. | |
Gan_Matrix * | gan_squmatT_lmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply generic matrix by the transpose of square matrix. | |
Gan_Matrix * | gan_squmatT_lmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by transpose of square matrix. | |
Gan_Matrix * | gan_squmatT_lmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of square matrix by generic matrix. | |
Gan_Matrix * | gan_squmatT_lmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply transpose of generic matrix by transpose of square matrix. | |
Gan_Matrix * | gan_squmatT_lmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of generic matrix by transpose of square matrix. | |
Gan_Matrix * | gan_squmatI_lmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply generic matrix by inverse of square matrix. | |
Gan_Matrix * | gan_squmatI_lmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by inverse of square matrix. | |
Gan_Matrix * | gan_squmatI_lmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by inverse of square matrix. | |
Gan_Matrix * | gan_squmatI_lmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply transpose of generic matrix by inverse of square matrix. | |
Gan_Matrix * | gan_squmatI_lmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of generic matrix by inverse of square matrix. | |
Gan_Matrix * | gan_squmatIT_lmult_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply generic matrix by inverse transpose of square matrix. | |
Gan_Matrix * | gan_squmatIT_lmult_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by inverse transpose of square matrix. | |
Gan_Matrix * | gan_squmatIT_lmult_i (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply generic matrix by inverse transpose of square matrix. | |
Gan_Matrix * | gan_squmatIT_lmultT_q (const Gan_SquMatrix *A, Gan_Matrix *B, Gan_Matrix *C) |
Macro: Multiply transpose of generic matrix by inverse transpose of square matrix. | |
Gan_Matrix * | gan_squmatIT_lmultT_s (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Multiply transpose of generic matrix by inverse transpose of square matrix. | |
Gan_SquMatrix * | gan_squmat_srmultT_squ_q (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Right-multiply square matrix by its own transpose. | |
Gan_SquMatrix * | gan_squmat_srmultT_squ_s (Gan_SquMatrix *A) |
Macro: Right-multiply square matrix by its own transpose. | |
Gan_SquMatrix * | gan_squmat_srmultT_squ_i (Gan_SquMatrix *A) |
Macro: Right-multiply square matrix by its own transpose. | |
Gan_SquMatrix * | gan_squmatT_srmult_squ_q (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Right-multiply transpose of square matrix by itself. | |
Gan_SquMatrix * | gan_squmatT_srmult_squ_s (Gan_SquMatrix *A) |
Macro: Right-multiply transpose of square matrix by itself. | |
Gan_SquMatrix * | gan_squmatT_srmult_squ_i (Gan_SquMatrix *A) |
Macro: Right-multiply transpose of square matrix by itself. | |
Gan_SquMatrix * | gan_squmatI_srmultIT_squ_q (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Right-multiply inverse of square matrix by its inverse transpose. | |
Gan_SquMatrix * | gan_squmatI_srmultIT_squ_s (Gan_SquMatrix *A) |
Macro: Right-multiply inverse of square matrix by its inverse transpose. | |
Gan_SquMatrix * | gan_squmatI_srmultIT_squ_i (Gan_SquMatrix *A) |
Macro: Right-multiply inverse of square matrix by its inverse transpose. | |
Gan_SquMatrix * | gan_squmatIT_srmultI_squ_q (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Self-multiply inverse transpose by inverse of square matrix. | |
Gan_SquMatrix * | gan_squmatIT_srmultI_squ_s (Gan_SquMatrix *A) |
Macro: Self-multiply inverse transpose by inverse of square matrix. | |
Gan_SquMatrix * | gan_squmatIT_srmultI_squ_i (Gan_SquMatrix *A) |
Macro: Self-multiply inverse transpose by inverse of square matrix. | |
Gan_SquMatrix * | gan_symmat_lrmult_q (Gan_SquMatrix *A, const Gan_Matrix *B, const Gan_Matrix *C, Gan_SquMatrix *D) |
Macro: Multiply symmetric matrix on left and right by generic matrix and transpose. | |
Gan_SquMatrix * | gan_symmat_lrmult_s (Gan_SquMatrix *A, const Gan_Matrix *B, const Gan_Matrix *C) |
Macro: Multiply symmetric matrix on left and right by generic matrix and transpose. | |
Gan_SquMatrix * | gan_symmat_lrmultT_q (Gan_SquMatrix *A, const Gan_Matrix *B, const Gan_Matrix *C, Gan_SquMatrix *D) |
Macro: Multiply symmetric matrix on left and right by generic matrix and transpose. | |
Gan_SquMatrix * | gan_symmat_lrmultT_s (Gan_SquMatrix *A, const Gan_Matrix *B, const Gan_Matrix *C) |
Macro: Multiply symmetric matrix on left and right by generic matrix and transpose. | |
Gan_SquMatrix * | gan_squmat_invert_q (Gan_SquMatrix *A, Gan_SquMatrix *B) |
Macro: Apply matrix inversion. | |
Gan_SquMatrix * | gan_squmat_invert_s (Gan_SquMatrix *A) |
Macro: Apply matrix inversion. | |
Gan_SquMatrix * | gan_squmat_invert_i (Gan_SquMatrix *A) |
Macro: Apply matrix inversion. | |
Gan_SquMatrix * | gan_squmat_cholesky_q (Gan_SquMatrix *A, Gan_SquMatrix *L) |
Macro: Apply Cholesky factorisation. | |
Gan_SquMatrix * | gan_squmat_cholesky_s (Gan_SquMatrix *A) |
Macro: Apply Cholesky factorisation. | |
Gan_SquMatrix * | gan_squmat_cholesky_i (Gan_SquMatrix *A) |
Macro: Apply Cholesky factorisation. | |
double | gan_squmat_sumsqr (const Gan_SquMatrix *A) |
Macro: Squared Frobenius norm of square matrix. | |
double | gan_squmat_Fnorm (const Gan_SquMatrix *A) |
Macro: Frobenius norm of square matrix. | |
Gan_Matrix * | gan_mat_from_squmat_q (const Gan_SquMatrix *A, Gan_Matrix *B) |
Macro: Convert square matrix to generic matrix. | |
Gan_Matrix * | gan_mat_from_squmat_s (const Gan_SquMatrix *A) |
Macro: Convert square matrix to generic matrix. | |
Gan_Bool | gan_squmat_same_type (const Gan_SquMatrix *A, const Gan_SquMatrix *B) |
Macro: Checks that two square matrices have the same type. | |
Gan_Bool | gan_squmat_same_size (const Gan_SquMatrix *A, const Gan_SquMatrix *B) |
Macro: Checks that two square matrices have the same size. | |
Gan_Bool | gan_squmat_same_type_size (const Gan_SquMatrix *A, const Gan_SquMatrix *B) |
Macro: Checks that two square matrices have the same type and size. | |
Gan_SquMatrix * | gan_squmat_set_type (Gan_SquMatrix *A, Gan_SquMatrixType type) |
Macro: Set type of square matrix. | |
Gan_SquMatrix * | gan_squmat_set_size (Gan_SquMatrix *A, unsigned long size) |
Macro: Set size of square matrix. | |
Gan_Bool | gan_squmat_test_size (const Gan_Matrix *A, unsigned long size) |
Macro: Test size of square matrix. | |
Gan_Bool | gan_squmat_symmetric_type (const Gan_SquMatrix *A) |
Macro: Test whether square matrix has symmetric type. | |
Gan_Bool | gan_squmat_diagonal_type (const Gan_SquMatrix *A) |
Macro: Test whether square matrix has diagonal type. | |
Gan_Bool | gan_squmat_symmetric (const Gan_SquMatrix *A) |
Macro: Test whether square matrix is symmetric. | |
Gan_Bool | gan_squmat_diagonal (const Gan_SquMatrix *A) |
Macro: Test whether square matrix is diagonal. | |
Gan_SquMatrix * | gan_squmat_fscanf_s (FILE *fp, const char *prefix, int prefix_len) |
Macro: Read square matrix from ASCII file. | |
Gan_SquMatrix * | gan_squmat_fread_s (FILE *fp, gan_uint32 *magic_number) |
Macro: Read square matrix from binary file. Read square matrix from file pointer fp in binary format. The magic number for the matrix is read from the file into the provided pointer. | |
void | gan_squmat_free (Gan_SquMatrix *A) |
Function to free square matrix. | |
void | gan_squmat_free_va (Gan_SquMatrix *A,...) |
Free a NULL terminated variable argument list of square matrices. | |
Gan_SquMatrix * | gan_squmat_set_type_size (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size) |
Set type and size of square matrix. | |
Gan_SquMatrix * | gan_squmat_fill_vap (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size, va_list *aptr) |
Fill square matrix from variable argument list. | |
Gan_SquMatrix * | gan_squmat_fill_const_q (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size, double value) |
Fill square matrix with constant value. | |
size_t | gan_squmat_data_size (Gan_SquMatrixType type, unsigned long size) |
Returns size of data array needed to create a matrix of given type & size. | |
Gan_SquMatrix * | gan_squmat_fscanf_q (FILE *fp, Gan_SquMatrix *A, char *prefix, int prefix_len) |
Read square matrix from ASCII file. | |
Gan_Bool | gan_squmat_fwrite (FILE *fp, const Gan_SquMatrix *A, gan_uint32 magic_number) |
Write square matrix to binary file. | |
Gan_SquMatrix * | gan_squmat_fread_q (FILE *fp, Gan_SquMatrix *A, gan_uint32 *magic_number) |
Read square matrix from binary file. | |
Gan_SquMatrix * | gan_squmat_form_gen (Gan_SquMatrix *A, Gan_SquMatrixType type, unsigned long size, double *data, size_t data_size) |
Part of: Gandalf Library