Matrix r4655
|
#include "Lapack-etc.h"
#include "cs-etc.h"
#include "cholmod-etc.h"
#include "Mdefines.h"
#include "idz.h"
#include "solve.h"
Go to the source code of this file.
Macros | |
#define | SOLVE_START |
#define | SOLVE_FINISH |
#define | IF_COMPLEX(_IF_, _ELSE_) ((MCS_XTYPE_GET() == MCS_COMPLEX) ? (_IF_) : (_ELSE_)) |
#define | ERROR_SOLVE_OOM(_ACL_, _BCL_) error(_("%s(<%s>, <%s>) failed: out of memory"), "solve", _ACL_, _BCL_) |
#define | SOLVE_DENSE_1(_CTYPE_, _PTR_, _ONE_) |
#define | SOLVE_DENSE_2(_CTYPE_, _PTR_) |
#define | SOLVE_SPARSE_TRIANGULAR(_CTYPE_, _A_, _ALO_, _BFR_, _ACL_, _BCL_) |
#define | SOLVE_SPARSE(_CTYPE_) |
#define | EYE(_CTYPE_, _ONE_) |
#define | SOLVE_DENSE_1(_CTYPE_, _PTR_, _ONE_) |
#define | SOLVE_DENSE_2(_CTYPE_, _PTR_) |
#define | SOLVE_SPARSE(_CTYPE_) |
#define | EYE(_CTYPE_, _PTR_, _ONE_) |
#define | MATMULT(_CTYPE_, _PTR_) |
Functions | |
static void | solveDN (SEXP rdn, SEXP adn, SEXP bdn) |
SEXP | denseLU_solve (SEXP a, SEXP b) |
SEXP | BunchKaufman_solve (SEXP a, SEXP b) |
SEXP | Cholesky_solve (SEXP a, SEXP b) |
SEXP | dtrMatrix_solve (SEXP a, SEXP b) |
SEXP | sparseLU_solve (SEXP a, SEXP b, SEXP sparse) |
static int | strmatch (const char *x, const char **valid) |
SEXP | CHMfactor_solve (SEXP a, SEXP b, SEXP sparse, SEXP system) |
SEXP | dtCMatrix_solve (SEXP a, SEXP b, SEXP sparse) |
SEXP | sparseQR_matmult (SEXP qr, SEXP y, SEXP op, SEXP complete, SEXP yxjj) |
#define ERROR_SOLVE_OOM | ( | _ACL_, | |
_BCL_ | |||
) | error(_("%s(<%s>, <%s>) failed: out of memory"), "solve", _ACL_, _BCL_) |
#define EYE | ( | _CTYPE_, | |
_ONE_ | |||
) |
#define EYE | ( | _CTYPE_, | |
_PTR_, | |||
_ONE_ | |||
) |
#define IF_COMPLEX | ( | _IF_, | |
_ELSE_ | |||
) | ((MCS_XTYPE_GET() == MCS_COMPLEX) ? (_IF_) : (_ELSE_)) |
#define MATMULT | ( | _CTYPE_, | |
_PTR_ | |||
) |
#define SOLVE_DENSE_1 | ( | _CTYPE_, | |
_PTR_, | |||
_ONE_ | |||
) |
#define SOLVE_DENSE_1 | ( | _CTYPE_, | |
_PTR_, | |||
_ONE_ | |||
) |
#define SOLVE_DENSE_2 | ( | _CTYPE_, | |
_PTR_ | |||
) |
#define SOLVE_DENSE_2 | ( | _CTYPE_, | |
_PTR_ | |||
) |
#define SOLVE_FINISH |
#define SOLVE_SPARSE | ( | _CTYPE_ | ) |
#define SOLVE_SPARSE | ( | _CTYPE_ | ) |
#define SOLVE_SPARSE_TRIANGULAR | ( | _CTYPE_, | |
_A_, | |||
_ALO_, | |||
_BFR_, | |||
_ACL_, | |||
_BCL_ | |||
) |
#define SOLVE_START |
SEXP BunchKaufman_solve | ( | SEXP | a, |
SEXP | b | ||
) |
Definition at line 134 of file solve.c.
References ERROR_LAPACK_1, ERROR_LAPACK_2, FCONE, GET_SLOT, Matrix_DimSym, Matrix_permSym, Matrix_uploSym, Matrix_xSym, newObject(), SET_SLOT, SOLVE_FINISH, and SOLVE_START.
SEXP CHMfactor_solve | ( | SEXP | a, |
SEXP | b, | ||
SEXP | sparse, | ||
SEXP | system | ||
) |
Definition at line 711 of file solve.c.
References _, c, CHD2M(), CHS2M(), ERROR_SOLVE_OOM, EYE, M2CHD(), M2CHF(), M2CHS(), Matrix_uploSym, Matrix_zone, SET_SLOT, SOLVE_FINISH, SOLVE_START, strmatch(), and valid.
SEXP Cholesky_solve | ( | SEXP | a, |
SEXP | b | ||
) |
Definition at line 240 of file solve.c.
References ERROR_LAPACK_1, ERROR_LAPACK_2, FCONE, GET_SLOT, Matrix_Calloc, Matrix_DimSym, Matrix_Free, Matrix_permSym, Matrix_uploSym, Matrix_xSym, newObject(), SET_SLOT, SOLVE_FINISH, and SOLVE_START.
SEXP denseLU_solve | ( | SEXP | a, |
SEXP | b | ||
) |
Definition at line 31 of file solve.c.
References ERROR_LAPACK_1, ERROR_LAPACK_2, FCONE, GET_SLOT, Matrix_DimSym, Matrix_permSym, Matrix_xSym, newObject(), SET_SLOT, SOLVE_FINISH, and SOLVE_START.
SEXP dtCMatrix_solve | ( | SEXP | a, |
SEXP | b, | ||
SEXP | sparse | ||
) |
Definition at line 808 of file solve.c.
References CXS2M(), ERROR_SOLVE_OOM, GET_SLOT, IF_COMPLEX, M2CXS(), Matrix_cs_dropzeros(), Matrix_cs_speye(), Matrix_cs_spfree(), Matrix_cs_transpose(), Matrix_DimSym, Matrix_uploSym, Matrix_xSym, Matrix_zone, MCS_COMPLEX, MCS_XTYPE_GET, MCS_XTYPE_SET, newObject(), SET_SLOT, SOLVE_DENSE_1, SOLVE_DENSE_2, SOLVE_FINISH, SOLVE_SPARSE, SOLVE_START, and Matrix_cs_sparse::xtype.
SEXP dtrMatrix_solve | ( | SEXP | a, |
SEXP | b | ||
) |
Definition at line 372 of file solve.c.
References ERROR_LAPACK_1, ERROR_LAPACK_2, FCONE, GET_SLOT, Matrix_diagSym, Matrix_DimSym, Matrix_uploSym, Matrix_xSym, newObject(), SET_SLOT, SOLVE_FINISH, and SOLVE_START.
SEXP sparseLU_solve | ( | SEXP | a, |
SEXP | b, | ||
SEXP | sparse | ||
) |
Definition at line 493 of file solve.c.
References CXS2M(), ERROR_SOLVE_OOM, GET_SLOT, Matrix_cs_sparse::i, IF_COMPLEX, M2CXS(), Matrix_cs_dropzeros(), Matrix_cs_free(), Matrix_cs_permute(), Matrix_cs_pinv(), Matrix_cs_speye(), Matrix_cs_spfree(), Matrix_cs_transpose(), Matrix_DimSym, Matrix_LSym, Matrix_pSym, Matrix_qSym, Matrix_USym, Matrix_xSym, Matrix_zone, MCS_COMPLEX, MCS_XTYPE_GET, MCS_XTYPE_SET, newObject(), SET_SLOT, SOLVE_DENSE_1, SOLVE_DENSE_2, SOLVE_FINISH, SOLVE_SPARSE, SOLVE_START, and Matrix_cs_sparse::xtype.
SEXP sparseQR_matmult | ( | SEXP | qr, |
SEXP | y, | ||
SEXP | op, | ||
SEXP | complete, | ||
SEXP | yxjj | ||
) |
Definition at line 934 of file solve.c.
References _, EYE, GET_SLOT, IF_COMPLEX, Matrix_cs_sparse::m, M2CXS(), MATMULT, Matrix_betaSym, Matrix_DimSym, Matrix_pSym, Matrix_VSym, Matrix_xSym, Matrix_zone, MCS_COMPLEX, MCS_XTYPE_GET, MCS_XTYPE_SET, Matrix_cs_sparse::n, newObject(), SET_SLOT, and Matrix_cs_sparse::xtype.
|
static |