Defines | Functions | Variables

svdutil.c File Reference

#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <errno.h>
#include <math.h>
#include <sys/types.h>
#include <sys/stat.h>
#include "svdlib.h"
#include "svdutil.h"
Include dependency graph for svdutil.c:

Go to the source code of this file.

Defines

#define BUNZIP2   "bzip2 -d"
#define BZIP2   "bzip2 -1"
#define UNZIP   "gzip -d"
#define ZIP   "gzip -1"
#define COMPRESS   "compress"
#define MAX_FILENAME   512
#define MAX_PIPES   64

Functions

long * svd_longArray (long size, char empty, char *name)
double * svd_doubleArray (long size, char empty, char *name)
void svd_beep (void)
void svd_debug (char *fmt,...)
void svd_error (char *fmt,...)
void svd_fatalError (char *fmt,...)
static void registerPipe (FILE *p)
static char isPipe (FILE *p)
static FILE * openPipe (char *pipeName, char *mode)
static FILE * readZippedFile (char *command, char *fileName)
FILE * svd_fatalReadFile (char *filename)
static int stringEndsIn (char *s, char *t)
FILE * svd_readFile (char *fileName)
static FILE * writeZippedFile (char *fileName, char append)
FILE * svd_writeFile (char *fileName, char append)
void svd_closeFile (FILE *file)
char svd_readBinInt (FILE *file, int *val)
char svd_readBinFloat (FILE *file, float *val)
char svd_writeBinInt (FILE *file, int x)
char svd_writeBinFloat (FILE *file, float r)
double svd_fsign (double a, double b)
double svd_dmax (double a, double b)
double svd_dmin (double a, double b)
long svd_imax (long a, long b)
long svd_imin (long a, long b)
void svd_dscal (long n, double da, double *dx, long incx)
void svd_datx (long n, double da, double *dx, long incx, double *dy, long incy)
void svd_dcopy (long n, double *dx, long incx, double *dy, long incy)
double svd_ddot (long n, double *dx, long incx, double *dy, long incy)
void svd_daxpy (long n, double da, double *dx, long incx, double *dy, long incy)
void svd_dsort2 (long igap, long n, double *array1, double *array2)
void svd_dswap (long n, double *dx, long incx, double *dy, long incy)
long svd_idamax (long n, double *dx, long incx)
void svd_opb (SMat A, double *x, double *y, double *temp)
void svd_opa (SMat A, double *x, double *y)
double svd_random2 (long *iy)
double svd_pythag (double a, double b)

Variables

static FILE * Pipe [MAX_PIPES]
static int numPipes = 0

Define Documentation

#define BUNZIP2   "bzip2 -d"

Definition at line 25 of file svdutil.c.

Referenced by svd_readFile().

#define BZIP2   "bzip2 -1"

Definition at line 26 of file svdutil.c.

Referenced by writeZippedFile().

#define COMPRESS   "compress"

Definition at line 29 of file svdutil.c.

Referenced by writeZippedFile().

#define MAX_FILENAME   512

Definition at line 31 of file svdutil.c.

Referenced by readZippedFile(), svd_readFile(), and writeZippedFile().

#define MAX_PIPES   64

Definition at line 32 of file svdutil.c.

Referenced by registerPipe().

#define UNZIP   "gzip -d"

Definition at line 27 of file svdutil.c.

Referenced by svd_readFile().

#define ZIP   "gzip -1"

Definition at line 28 of file svdutil.c.

Referenced by writeZippedFile().


Function Documentation

static char isPipe ( FILE *  p ) [static]

Definition at line 96 of file svdutil.c.

References FALSE, numPipes, Pipe, and TRUE.

Referenced by svd_closeFile().

static FILE* openPipe ( char *  pipeName,
char *  mode 
) [static]

Definition at line 104 of file svdutil.c.

References registerPipe().

Referenced by readZippedFile(), svd_readFile(), svd_writeFile(), and writeZippedFile().

static FILE* readZippedFile ( char *  command,
char *  fileName 
) [static]

Definition at line 111 of file svdutil.c.

References MAX_FILENAME, and openPipe().

Referenced by svd_readFile().

static void registerPipe ( FILE *  p ) [static]

Definition at line 91 of file svdutil.c.

References MAX_PIPES, numPipes, Pipe, and svd_error().

Referenced by openPipe().

static int stringEndsIn ( char *  s,
char *  t 
) [static]

Definition at line 124 of file svdutil.c.

References FALSE, and TRUE.

Referenced by svd_readFile(), svd_writeFile(), and writeZippedFile().

void svd_beep ( void   )

Definition at line 58 of file svdutil.c.

Referenced by svd_error(), and svd_fatalError().

void svd_closeFile ( FILE *  file )
void svd_datx ( long  n,
double  da,
double *  dx,
long  incx,
double *  dy,
long  incy 
)

Definition at line 307 of file svdutil.c.

Referenced by lanczos_step(), and stpone().

void svd_daxpy ( long  n,
double  da,
double *  dx,
long  incx,
double *  dy,
long  incy 
)

Definition at line 377 of file svdutil.c.

Referenced by lanczos_step(), purge(), ritvec(), startv(), and stpone().

void svd_dcopy ( long  n,
double *  dx,
long  incx,
double *  dy,
long  incy 
)

Definition at line 330 of file svdutil.c.

Referenced by lanczos_step(), lanso(), purge(), ritvec(), startv(), store(), and stpone().

double svd_ddot ( long  n,
double *  dx,
long  incx,
double *  dy,
long  incy 
)

Definition at line 353 of file svdutil.c.

Referenced by lanczos_step(), purge(), ritvec(), startv(), and stpone().

void svd_debug ( char *  fmt,
  ... 
)

Definition at line 63 of file svdutil.c.

double svd_dmax ( double  a,
double  b 
)

Definition at line 262 of file svdutil.c.

Referenced by svd_pythag(), and svdLAS2().

double svd_dmin ( double  a,
double  b 
)

Definition at line 269 of file svdutil.c.

Referenced by error_bound(), and svd_pythag().

double* svd_doubleArray ( long  size,
char  empty,
char *  name 
)

Definition at line 47 of file svdutil.c.

Referenced by ritvec(), store(), svdLAS2(), svdLoadDenseArray(), and svdNewSMat().

void svd_dscal ( long  n,
double  da,
double *  dx,
long  incx 
)

Definition at line 291 of file svdutil.c.

Referenced by lanczos_step(), ritvec(), and stpone().

void svd_dsort2 ( long  igap,
long  n,
double *  array1,
double *  array2 
)

Definition at line 401 of file svdutil.c.

References svd_dsort2().

Referenced by lanso(), and svd_dsort2().

void svd_dswap ( long  n,
double *  dx,
long  incx,
double *  dy,
long  incy 
)

Definition at line 429 of file svdutil.c.

Referenced by ortbnd().

void svd_error ( char *  fmt,
  ... 
)
void svd_fatalError ( char *  fmt,
  ... 
)

Definition at line 80 of file svdutil.c.

References svd_beep().

Referenced by store(), and svd_fatalReadFile().

FILE* svd_fatalReadFile ( char *  filename )

Definition at line 117 of file svdutil.c.

References svd_fatalError(), and svd_readFile().

Referenced by svdLoadDenseMatrix(), and svdLoadSparseMatrix().

double svd_fsign ( double  a,
double  b 
)

Definition at line 254 of file svdutil.c.

Referenced by imtql2(), and imtqlb().

long svd_idamax ( long  n,
double *  dx,
long  incx 
)

Definition at line 458 of file svdutil.c.

Referenced by error_bound(), and purge().

long svd_imax ( long  a,
long  b 
)

Definition at line 276 of file svdutil.c.

Referenced by lanso().

long svd_imin ( long  a,
long  b 
)

Definition at line 283 of file svdutil.c.

Referenced by lanczos_step(), lanso(), ritvec(), and svdLAS2().

long* svd_longArray ( long  size,
char  empty,
char *  name 
)

Definition at line 36 of file svdutil.c.

Referenced by svdNewSMat().

void svd_opa ( SMat  A,
double *  x,
double *  y 
)

Definition at line 517 of file svdutil.c.

References smat::cols, smat::pointr, smat::rowind, smat::rows, SVD_MXV, SVDCount, and smat::value.

Referenced by ritvec().

void svd_opb ( SMat  A,
double *  x,
double *  y,
double *  temp 
)

Definition at line 488 of file svdutil.c.

References smat::cols, smat::pointr, smat::rowind, smat::rows, SVD_MXV, SVDCount, and smat::value.

Referenced by lanczos_step(), ritvec(), startv(), and stpone().

double svd_pythag ( double  a,
double  b 
)

Definition at line 616 of file svdutil.c.

References svd_dmax(), and svd_dmin().

Referenced by imtql2(), and imtqlb().

double svd_random2 ( long *  iy )

Definition at line 564 of file svdutil.c.

Referenced by startv().

char svd_readBinFloat ( FILE *  file,
float *  val 
)

Definition at line 225 of file svdutil.c.

References FALSE, and TRUE.

Referenced by svdLoadDenseArray(), svdLoadDenseBinaryFile(), and svdLoadSparseBinaryFile().

char svd_readBinInt ( FILE *  file,
int *  val 
)

Definition at line 215 of file svdutil.c.

References FALSE, and TRUE.

Referenced by svdLoadDenseArray(), svdLoadDenseBinaryFile(), and svdLoadSparseBinaryFile().

FILE* svd_readFile ( char *  fileName )

Definition at line 132 of file svdutil.c.

References BUNZIP2, MAX_FILENAME, openPipe(), readZippedFile(), stringEndsIn(), and UNZIP.

Referenced by svd_fatalReadFile(), and svdLoadDenseArray().

char svd_writeBinFloat ( FILE *  file,
float  r 
)

Definition at line 244 of file svdutil.c.

References FALSE, and TRUE.

Referenced by svdWriteDenseArray(), svdWriteDenseBinaryFile(), and svdWriteSparseBinaryFile().

char svd_writeBinInt ( FILE *  file,
int  x 
)

Definition at line 237 of file svdutil.c.

References FALSE, and TRUE.

Referenced by svdWriteDenseArray(), svdWriteDenseBinaryFile(), and svdWriteSparseBinaryFile().

FILE* svd_writeFile ( char *  fileName,
char  append 
)
static FILE* writeZippedFile ( char *  fileName,
char  append 
) [static]

Definition at line 179 of file svdutil.c.

References BZIP2, COMPRESS, MAX_FILENAME, openPipe(), stringEndsIn(), and ZIP.

Referenced by svd_writeFile().


Variable Documentation

int numPipes = 0 [static]

Definition at line 34 of file svdutil.c.

Referenced by isPipe(), and registerPipe().

FILE* Pipe[MAX_PIPES] [static]

Definition at line 33 of file svdutil.c.

Referenced by isPipe(), and registerPipe().