81 |
GET_SLOT(x, Matrix_DimNamesSym)); |
GET_SLOT(x, Matrix_DimNamesSym)); |
82 |
} |
} |
83 |
|
|
84 |
|
/* this use to be called sCMatrix_to_gCMatrix(..) [in ./dsCMatrix.c ]: */ |
85 |
SEXP Csparse_symmetric_to_general(SEXP x) |
SEXP Csparse_symmetric_to_general(SEXP x) |
86 |
{ |
{ |
87 |
cholmod_sparse *chx = as_cholmod_sparse(x), *chgx; |
cholmod_sparse *chx = as_cholmod_sparse(x), *chgx; |
88 |
|
|
89 |
if (!(chx->stype)) |
if (!(chx->stype)) |
90 |
error(_("Nonsymmetric matrix in Csparse_symmeteric_to_general")); |
error(_("Nonsymmetric matrix in Csparse_symmeteric_to_general")); |
91 |
chgx = cholmod_copy(chx, 0, chx->xtype, &c); |
chgx = cholmod_copy(chx, /* stype: */ 0, chx->xtype, &c); |
92 |
|
/* xtype: pattern, "real", complex or .. */ |
93 |
Free(chx); |
Free(chx); |
94 |
return chm_sparse_to_SEXP(chgx, 1, 0, "", |
return chm_sparse_to_SEXP(chgx, 1, 0, "", |
95 |
GET_SLOT(x, Matrix_DimNamesSym)); |
GET_SLOT(x, Matrix_DimNamesSym)); |