.TH BStri_mult 3 "4/4/1996" " " "BlockSolve95" .SH NAME BStri_mult \- Multiply the matrix (A - shift*B) by a block of vectors .SH INPUT PARAMETERS .PD 0 .TP .B A - a sparse matrix .PD 1 .PD 0 .TP .B comm_A - the communication structure for A .PD 1 .PD 0 .TP .B B - a sparse matrix .PD 1 .PD 0 .TP .B comm_B - the communication structure for B .PD 1 .PD 0 .TP .B v1 - the block of vectors to multiply by .PD 1 .PD 0 .TP .B t1 - a block of work vectors .PD 1 .PD 0 .TP .B t2 - a block of work vectors .PD 1 .PD 0 .TP .B shift - the shift value in (A-shift*B) .PD 1 .PD 0 .TP .B BS - the number of vectors in v1 .PD 1 .PD 0 .TP .B procinfo - the usual processor stuff .PD 1 .SH OUTPUT PARAMETERS .PD 0 .TP .B v2 - the resulting block of vectors .PD 1 .SH RETURNS void .SH NOTES Different code is used to multiply a single vector than is used to multiply a block of vectors (this improves efficiency). Also different code is used if shift=0.0. If B is NULL, then we assume that it is the identity matrix. .SH SYNOPSIS .nf void BStri_mult(BSpar_mat *A, BScomm *comm_A, BSpar_mat *B, BScomm *comm_B, FLOAT *v1, FLOAT *v2, FLOAT *t1, FLOAT *t2, FLOAT shift, int BS, BSprocinfo *procinfo) .fi .SH LOCATION BlockSolve95/src/BStri_mult.c