matopts.h File Reference

Matrix options processing and generation. More...

#include <oski/common.h>
#include <oski/mangle.h>
#include <oski/matrix.h>

Go to the source code of this file.

Data Structures

struct  matopts_t
 Stores valid matrix options. More...

Defines

#define INC_BENCH_MATOPTS_H
 bench/matopts.h included.
Name mangling.
#define matopts_t   MANGLE_(matopts_t)
#define matopts_Init   MANGLE_(matopts_Init)
#define matopts_Display   MANGLE_(matopts_Display)
#define matopts_Usage   MANGLE_(matopts_Usage)
#define matopts_Process   MANGLE_(matopts_Process)
#define matopts_CreateMat   MANGLE_(matopts_CreateMat)
Types of automatically generated test matrices.
#define IS_MATTYPE(x, mt)   (strcmp(x, mt) == 0)
 Non-zero <==> x is a matrix of type mt.
#define MATTYPE_HARWELL_BOEING   "hb"
 Harwell-Boeing matrix pattern, read in from a file.
#define MATTYPE_DENSE   "dense"
 Dense matrix.
#define MATTYPE_BANDED   "band"
 Matrix with a dense blocked band.
#define MATTYPE_RANDOM   "random"
 Random, square matrix.
#define MATTYPE_TRI_LOWER   "lowtri"
 Lower triangular matrix with a random non-zero pattern.
#define MATTYPE_TRI_UPPER   "uptri"
 Upper triangular matrix with a random non-zero pattern.
#define MATTYPE_SYMM   "symm"
 Dense, symmetric matrix.
#define MATTYPE_RANDRECT   "randrect"
 Random rectangular matrix with more columns than rows.

Functions

void matopts_Init (matopts_t *opts)
 Initialize matrix options to default values.
void matopts_Display (const matopts_t *opts, FILE *fp)
 Display summary of matrix options.
void matopts_Usage (FILE *fp)
 Display summary of command-line matrix options.
int matopts_Process (int argc, char *argv[], int i, matopts_t *opts)
 Process possible matrix-generation command-line option.
oski_matrix_t matopts_CreateMat (const matopts_t *opts, oski_index_t *p_num_rows, oski_index_t *p_num_cols, oski_index_t *p_nnz_stored, oski_index_t *p_nnz)
 Instantiate a matrix from the specified options.


Detailed Description

Matrix options processing and generation.

This module provides support for automatic matrix generation via specified constraints.

Todo:
Reimplement using Hoemmen's matrix generator.

Define Documentation

#define INC_BENCH_MATOPTS_H

bench/matopts.h included.

#define MATTYPE_HARWELL_BOEING   "hb"

Harwell-Boeing matrix pattern, read in from a file.

Referenced by matopts_CreateMat(), matopts_Display(), matopts_Process(), and matopts_Usage().

#define MATTYPE_RANDRECT   "randrect"

Random rectangular matrix with more columns than rows.

Referenced by matopts_CreateMat(), matopts_Process(), and matopts_Usage().

#define MATTYPE_SYMM   "symm"

Dense, symmetric matrix.

Referenced by matopts_CreateMat(), matopts_Process(), and matopts_Usage().

#define MATTYPE_TRI_LOWER   "lowtri"

Lower triangular matrix with a random non-zero pattern.

Referenced by matopts_CreateMat(), matopts_Process(), and matopts_Usage().

#define MATTYPE_TRI_UPPER   "uptri"

Upper triangular matrix with a random non-zero pattern.

Referenced by matopts_CreateMat(), matopts_Process(), and matopts_Usage().


Function Documentation

void matopts_Init ( matopts_t opts  ) 

Initialize matrix options to default values.

References matopts_t::expand_symm, and MATTYPE_DENSE.


Generated on Fri Apr 8 22:35:19 2011 for BeBOP Optimized Sparse Kernel Interface Library by  doxygen 1.5.9