#include "BSprivate.h" /*@ BSset_diag - Set the diagonal of A to a constant Input Parameters: . A - a sparse matrix . my_alpha - the constant . procinfo - the usual processor stuff Output Parameters: . A - a sparse matrix with the diagonal set to my_alpha Returns: void Notes: In the nonsymmetric case we set the diagonal +/-my_alpha depending on the sign of the diagonal. @*/ /* Set the diagonal of the matrix to my_alpha */ void BSset_diag(BSpar_mat *A, FLOAT my_alpha, BSprocinfo *procinfo) { int i; FLOAT *matrix; int cl_ind, size; BScl_2_inode *cliques; cliques = A->clique2inode; for (cl_ind=0;cl_indnum_cols;cl_ind++) { if (cliques->proc[cl_ind] == procinfo->my_id) { matrix = cliques->d_mats[cl_ind].matrix; size = cliques->d_mats[cl_ind].size; if(A->icc_storage) { for (i=0;i