SRC/dutil.c File Reference

Several matrix utilities. More...

#include <math.h>
#include "superlu_ddefs.h"

Functions/Subroutines

void dCreate_CompCol_Matrix_dist (SuperMatrix *A, int_t m, int_t n, int_t nnz, double *nzval, int_t *rowind, int_t *colptr, Stype_t stype, Dtype_t dtype, Mtype_t mtype)
void dCreate_CompRowLoc_Matrix_dist (SuperMatrix *A, int_t m, int_t n, int_t nnz_loc, int_t m_loc, int_t fst_row, double *nzval, int_t *colind, int_t *rowptr, Stype_t stype, Dtype_t dtype, Mtype_t mtype)
void dCompRow_to_CompCol_dist (int_t m, int_t n, int_t nnz, double *a, int_t *colind, int_t *rowptr, double **at, int_t **rowind, int_t **colptr)
 Convert a row compressed storage into a column compressed storage.
void dCopy_CompCol_Matrix_dist (SuperMatrix *A, SuperMatrix *B)
 Copy matrix A into matrix B.
void dPrint_CompCol_Matrix_dist (SuperMatrix *A)
void dPrint_Dense_Matrix_dist (SuperMatrix *A)
int dPrint_CompRowLoc_Matrix_dist (SuperMatrix *A)
int file_dPrint_CompRowLoc_Matrix_dist (FILE *fp, SuperMatrix *A)
void dCreate_Dense_Matrix_dist (SuperMatrix *X, int_t m, int_t n, double *x, int_t ldx, Stype_t stype, Dtype_t dtype, Mtype_t mtype)
void dCopy_Dense_Matrix_dist (int_t M, int_t N, double *X, int_t ldx, double *Y, int_t ldy)
void dCreate_SuperNode_Matrix_dist (SuperMatrix *L, int_t m, int_t n, int_t nnz, double *nzval, int_t *nzval_colptr, int_t *rowind, int_t *rowind_colptr, int_t *col_to_sup, int_t *sup_to_col, Stype_t stype, Dtype_t dtype, Mtype_t mtype)
void dGenXtrue_dist (int_t n, int_t nrhs, double *x, int_t ldx)
void dFillRHS_dist (char *trans, int_t nrhs, double *x, int_t ldx, SuperMatrix *A, double *rhs, int_t ldb)
 Let rhs[i] = sum of i-th row of A, so the solution vector is all 1's.
void dfill_dist (double *a, int_t alen, double dval)
 Fills a double precision array with a given value.
void dinf_norm_error_dist (int_t n, int_t nrhs, double *x, int_t ldx, double *xtrue, int_t ldxtrue, gridinfo_t *grid)
 Check the inf-norm of the error vector.
void PrintDouble5 (char *name, int_t len, double *x)
int file_PrintDouble5 (FILE *fp, char *name, int_t len, double *x)
void dPrintLblocks (int_t iam, int_t nsupers, gridinfo_t *grid, Glu_persist_t *Glu_persist, LocalLU_t *Llu)
 Print the blocks in the factored matrix L.
void dPrintUblocks (int_t iam, int_t nsupers, gridinfo_t *grid, Glu_persist_t *Glu_persist, LocalLU_t *Llu)
 Print the blocks in the factored matrix U.
int dprint_gsmv_comm (FILE *fp, int_t m_loc, pdgsmv_comm_t *gsmv_comm, gridinfo_t *grid)
void GenXtrueRHS (int nrhs, SuperMatrix *A, Glu_persist_t *Glu_persist, gridinfo_t *grid, double **xact, int *ldx, double **b, int *ldb)


Detailed Description

 -- Distributed SuperLU routine (version 2.0) --
 Lawrence Berkeley National Lab, Univ. of California Berkeley.
 March 15, 2003

 Copyright (c) 1994 by Xerox Corporation.  All rights reserved.

 THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
 EXPRESSED OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.

 Permission is hereby granted to use or copy this program for any
 purpose, provided the above notices are retained on all copies.
 Permission to modify the code and to distribute modified code is
 granted, provided the above notices are retained, and a notice that
 the code was modified is included with the above copyright notice.
 

Function Documentation

void dCompRow_to_CompCol_dist ( int_t  m,
int_t  n,
int_t  nnz,
double *  a,
int_t colind,
int_t rowptr,
double **  at,
int_t **  rowind,
int_t **  colptr 
)

void dCopy_CompCol_Matrix_dist ( SuperMatrix A,
SuperMatrix B 
)

void dCopy_Dense_Matrix_dist ( int_t  M,
int_t  N,
double *  X,
int_t  ldx,
double *  Y,
int_t  ldy 
)

  Purpose
  =======

  Copies a two-dimensional matrix X to another matrix Y.
 

void dCreate_CompCol_Matrix_dist ( SuperMatrix A,
int_t  m,
int_t  n,
int_t  nnz,
double *  nzval,
int_t rowind,
int_t colptr,
Stype_t  stype,
Dtype_t  dtype,
Mtype_t  mtype 
)

void dCreate_CompRowLoc_Matrix_dist ( SuperMatrix A,
int_t  m,
int_t  n,
int_t  nnz_loc,
int_t  m_loc,
int_t  fst_row,
double *  nzval,
int_t colind,
int_t rowptr,
Stype_t  stype,
Dtype_t  dtype,
Mtype_t  mtype 
)

void dCreate_Dense_Matrix_dist ( SuperMatrix X,
int_t  m,
int_t  n,
double *  x,
int_t  ldx,
Stype_t  stype,
Dtype_t  dtype,
Mtype_t  mtype 
)

void dCreate_SuperNode_Matrix_dist ( SuperMatrix L,
int_t  m,
int_t  n,
int_t  nnz,
double *  nzval,
int_t nzval_colptr,
int_t rowind,
int_t rowind_colptr,
int_t col_to_sup,
int_t sup_to_col,
Stype_t  stype,
Dtype_t  dtype,
Mtype_t  mtype 
)

void dfill_dist ( double *  a,
int_t  alen,
double  dval 
)

void dFillRHS_dist ( char *  trans,
int_t  nrhs,
double *  x,
int_t  ldx,
SuperMatrix A,
double *  rhs,
int_t  ldb 
)

void dGenXtrue_dist ( int_t  n,
int_t  nrhs,
double *  x,
int_t  ldx 
)

void dinf_norm_error_dist ( int_t  n,
int_t  nrhs,
double *  x,
int_t  ldx,
double *  xtrue,
int_t  ldxtrue,
gridinfo_t grid 
)

void dPrint_CompCol_Matrix_dist ( SuperMatrix A  ) 

int dPrint_CompRowLoc_Matrix_dist ( SuperMatrix A  ) 

void dPrint_Dense_Matrix_dist ( SuperMatrix A  ) 

int dprint_gsmv_comm ( FILE *  fp,
int_t  m_loc,
pdgsmv_comm_t gsmv_comm,
gridinfo_t grid 
)

void dPrintLblocks ( int_t  iam,
int_t  nsupers,
gridinfo_t grid,
Glu_persist_t Glu_persist,
LocalLU_t Llu 
)

void dPrintUblocks ( int_t  iam,
int_t  nsupers,
gridinfo_t grid,
Glu_persist_t Glu_persist,
LocalLU_t Llu 
)

int file_dPrint_CompRowLoc_Matrix_dist ( FILE *  fp,
SuperMatrix A 
)

int file_PrintDouble5 ( FILE *  fp,
char *  name,
int_t  len,
double *  x 
)

void GenXtrueRHS ( int  nrhs,
SuperMatrix A,
Glu_persist_t Glu_persist,
gridinfo_t grid,
double **  xact,
int *  ldx,
double **  b,
int *  ldb 
)

void PrintDouble5 ( char *  name,
int_t  len,
double *  x 
)


Generated on Tue Aug 30 14:36:33 2011 for SuperLUDistributed by  doxygen 1.5.5