matrix.h File Reference


Detailed Description

Matrix handle.

#include <oski/common.h>
#include <oski/matcommon.h>
#include <oski/structhint.h>
#include <oski/trace.h>
#include <oski/CSR/format.h>
#include <oski/matmult.h>
#include <oski/ata.h>
#include <oski/trisolve.h>
#include <oski/a_and_at.h>
#include <oski/matpow.h>

Go to the source code of this file.

Data Structures

struct  oski_matstruct_t
 Generic matrix representation. More...
struct  tagOski_submat_t
 Defines a rectangular submatrix consisting of a given number of consecutive rows and columns, starting at a given offset. More...

Mangled names.

#define oski_matstruct_t   MANGLE_(oski_matstruct_t)
#define oski_matrix_t   MANGLE_(oski_matrix_t)
#define const_oski_matrix_t   MANGLE_(const_oski_matrix_t)
#define oski_CreateMatStruct   MANGLE_(oski_CreateMatStruct)
#define oski_DestroyMatStruct   MANGLE_(oski_DestroyMatStruct)

Name mangling of conversion routines.

#define oski_DestroyMatRepr_funcpt   MANGLE_(oski_DestroyMatRepr_funcpt)
#define oski_CreateMatReprFromCSR_funcpt   MANGLE_(oski_CreateMatReprFromCSR_funcpt)
#define oski_CreateSubmatReprFromCSR_funcpt   MANGLE_(oski_CreateSubmatReprFromCSR_funcpt)
#define oski_CopyMatRepr_funcpt   MANGLE_(oski_CopyMatRepr_funcpt)
#define oski_CalcMatRepr1Norm_funcpt   MANGLE_(oski_CalcMatRepr1Norm_funcpt)
#define oski_ConvertMatReprToCSR_funcpt   MANGLE_(oski_ConvertMatReprToCSR_funcpt)
#define tagOski_submat_t   MANGLE_(tagOski_submat_t)
#define oski_submat_t   MANGLE_(oski_submat_t)

Defines

#define INC_OSKI_MATRIX_H
 matrix.h has been included.
#define OSKI_CHECK_MAT_DIMS(m, n)   (((m) >= 0) && ((n) >= 0))
 Returns 1 <==> specified dimensions are legal.
#define OSKI_IS_SQUARE_MAT(m, n)   ((m) == (n))
 Returns 1 <==> dimensions are equal.

Typedefs

typedef oski_matstruct_toski_matrix_t
 Sparse matrix handle type.
typedef const oski_matstruct_tconst_oski_matrix_t
 Read-only (const) sparse matrix handle type, for function return values.
typedef tagOski_submat_t oski_submat_t
 Defines a rectangular submatrix consisting of a given number of consecutive rows and columns, starting at a given offset.
typedef void(* oski_DestroyMatRepr_funcpt )(void *mat)
 Method type: Destroy matrix type-specific representation.
typedef void *(* oski_CreateMatReprFromCSR_funcpt )(const oski_matCSR_t *mat, const oski_matcommon_t *props,...)
 Method type: Instantiate from an existing CSR representation.
typedef void *(* oski_CreateSubmatReprFromCSR_funcpt )(const oski_matCSR_t *mat, const oski_matcommon_t *props, const oski_submat_t *sub,...)
 Method type: Instantiate from a submatrix of an existing CSR representation.
typedef oski_matCSR_t *(* oski_ConvertMatReprToCSR_funcpt )(const void *, const oski_matcommon_t *props)
 Method type: Convert to CSR format.
typedef void *(* oski_CopyMatRepr_funcpt )(const void *, const oski_matcommon_t *props)
 Method type: Duplicate a matrix representation.
typedef double(* oski_CalcMatRepr1Norm_funcpt )(const void *mat, const oski_matcommon_t *props)
 Methyod type: Compute the 1-norm.

Functions

oski_matstruct_toski_CreateMatStruct (void)
 Returns a newly allocated matrix structure.
void oski_DestroyMatStruct (oski_matstruct_t *A)
 Free a matrix structure (but not its child data structures).


Typedef Documentation

typedef void*(* oski_CreateSubmatReprFromCSR_funcpt)(const oski_matCSR_t *mat, const oski_matcommon_t *props, const oski_submat_t *sub,...)
 

Method type: Instantiate from a submatrix of an existing CSR representation.

Todo:
Future functionality: implement submatrix instantiation.

typedef struct tagOski_submat_t oski_submat_t
 

Defines a rectangular submatrix consisting of a given number of consecutive rows and columns, starting at a given offset.

The base index is implicitly defined.


Function Documentation

oski_matstruct_t* oski_CreateMatStruct void   ) 
 

Returns a newly allocated matrix structure.

Returns:
A new matrix structure, or NULL on memory allocation error.
See also:
oski_DestroyMatStruct()

void oski_DestroyMatStruct oski_matstruct_t A  ) 
 

Free a matrix structure (but not its child data structures).

Parameters:
[in,out] A Matrix object/handle.
See also:
oski_CreateMatStruct()


Generated on Wed Sep 19 16:41:22 2007 for BeBOP Optimized Sparse Kernel Interface Library by  doxygen 1.4.6