#include "octave-config.h"
#include "Array-util.h"
#include "lo-array-errwarn.h"
#include "mx-inlines.cc"
#include "oct-locbuf.h"
Go to the source code of this file.
Macros | |
#define | FULL_SPARSE_MUL(RET_TYPE, EL_TYPE, ZERO) |
#define | FULL_SPARSE_MUL_TRANS(RET_TYPE, EL_TYPE, ZERO, CONJ_OP) |
#define | SPARSE_ALL_OP(DIM) |
#define | SPARSE_ANY_ALL_OP(DIM, INIT_VAL, MT_RESULT, TEST_OP, TEST_TRUE_VAL) |
#define | SPARSE_ANY_ALL_OP_COL_CODE(TEST_OP, TEST_TRUE_VAL) |
#define | SPARSE_ANY_ALL_OP_ROW_CODE(TEST_OP, TEST_TRUE_VAL) |
#define | SPARSE_ANY_OP(DIM) SPARSE_ANY_ALL_OP (DIM, false, false, !=, true) |
#define | SPARSE_BASE_REDUCTION_OP(RET_TYPE, EL_TYPE, ROW_EXPR, COL_EXPR, INIT_VAL, MT_RESULT) |
#define | SPARSE_CUMPROD(RET_TYPE, ELT_TYPE, FCN) |
#define | SPARSE_CUMSUM(RET_TYPE, ELT_TYPE, FCN) |
#define | SPARSE_FULL_MUL(RET_TYPE, EL_TYPE, ZERO) |
#define | SPARSE_FULL_TRANS_MUL(RET_TYPE, EL_TYPE, ZERO, CONJ_OP) |
#define | SPARSE_MSM_BIN_OP_1(R, F, OP, M1, M2) |
#define | SPARSE_MSM_BIN_OP_2(R, F, OP, M1, M2) |
#define | SPARSE_MSM_BIN_OPS(R1, R2, M1, M2) |
#define | SPARSE_MSM_BOOL_OP(F, OP, M1, M2, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_MSM_BOOL_OPS(M1, M2, ZERO) SPARSE_MSM_BOOL_OPS2(M1, M2, ZERO, ZERO) |
#define | SPARSE_MSM_BOOL_OPS2(M1, M2, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_MSM_CMP_OP(F, OP, M1, C1, M2, C2) |
#define | SPARSE_MSM_CMP_OPS(M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_MSM_EQNE_OPS(M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_REDUCTION_OP(RET_TYPE, EL_TYPE, OP, INIT_VAL, MT_RESULT) |
#define | SPARSE_REDUCTION_OP_COL_EXPR(OP) tmp[j] OP data (i) |
#define | SPARSE_REDUCTION_OP_ROW_EXPR(OP) tmp[ridx (i)] OP data (i) |
#define | SPARSE_SMM_BIN_OP_1(R, F, OP, M1, M2) |
#define | SPARSE_SMM_BIN_OP_2(R, F, OP, M1, M2) |
#define | SPARSE_SMM_BIN_OP_2_CHECK_product(ET) do_mx_check (m2, mx_inline_all_finite<ET>) |
#define | SPARSE_SMM_BIN_OP_2_CHECK_quotient(ET) ! do_mx_check (m2, mx_inline_any_nan<ET>) && m2.nnz () == m2.numel () |
#define | SPARSE_SMM_BIN_OPS(R1, R2, M1, M2) |
#define | SPARSE_SMM_BOOL_OP(F, OP, M1, M2, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SMM_BOOL_OPS(M1, M2, ZERO) SPARSE_SMM_BOOL_OPS2(M1, M2, ZERO, ZERO) |
#define | SPARSE_SMM_BOOL_OPS2(M1, M2, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SMM_CMP_OP(F, OP, M1, C1, M2, C2) |
#define | SPARSE_SMM_CMP_OPS(M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_SMM_EQNE_OPS(M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_SMS_BIN_OP_1(R, F, OP, M, S) |
#define | SPARSE_SMS_BIN_OP_2(R, F, OP, M, S) |
#define | SPARSE_SMS_BIN_OPS(R1, R2, M, S) |
#define | SPARSE_SMS_BOOL_OP(F, OP, M, S, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SMS_BOOL_OPS(M, S, ZERO) SPARSE_SMS_BOOL_OPS2(M, S, ZERO, ZERO) |
#define | SPARSE_SMS_BOOL_OPS2(M, S, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SMS_CMP_OP(F, OP, M, MZ, MC, S, SZ, SC) |
#define | SPARSE_SMS_CMP_OPS(M, MZ, CM, S, SZ, CS) |
#define | SPARSE_SMS_EQNE_OPS(M, MZ, CM, S, SZ, CS) |
#define | SPARSE_SMSM_BIN_OP_1(R, F, OP, M1, M2) |
#define | SPARSE_SMSM_BIN_OP_2(R, F, OP, M1, M2) |
#define | SPARSE_SMSM_BIN_OP_3(R, F, OP, M1, M2) |
#define | SPARSE_SMSM_BIN_OPS(R1, R2, M1, M2) |
#define | SPARSE_SMSM_BOOL_OP(F, OP, M1, M2, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SMSM_BOOL_OPS(M1, M2, ZERO) SPARSE_SMSM_BOOL_OPS2(M1, M2, ZERO, ZERO) |
#define | SPARSE_SMSM_BOOL_OPS2(M1, M2, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SMSM_CMP_OP(F, OP, M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_SMSM_CMP_OPS(M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_SMSM_EQNE_OPS(M1, Z1, C1, M2, Z2, C2) |
#define | SPARSE_SPARSE_MUL(RET_TYPE, RET_EL_TYPE, EL_TYPE) |
#define | SPARSE_SSM_BIN_OP_1(R, F, OP, S, M) |
#define | SPARSE_SSM_BIN_OP_2(R, F, OP, S, M) |
#define | SPARSE_SSM_BIN_OPS(R1, R2, S, M) |
#define | SPARSE_SSM_BOOL_OP(F, OP, S, M, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SSM_BOOL_OPS(S, M, ZERO) SPARSE_SSM_BOOL_OPS2(S, M, ZERO, ZERO) |
#define | SPARSE_SSM_BOOL_OPS2(S, M, LHS_ZERO, RHS_ZERO) |
#define | SPARSE_SSM_CMP_OP(F, OP, S, SZ, SC, M, MZ, MC) |
#define | SPARSE_SSM_CMP_OPS(S, SZ, SC, M, MZ, MC) |
#define | SPARSE_SSM_EQNE_OPS(S, SZ, SC, M, MZ, MC) |
#define FULL_SPARSE_MUL | ( | RET_TYPE, | |
EL_TYPE, | |||
ZERO | |||
) |
Definition at line 1926 of file Sparse-op-defs.h.
Referenced by operator*().
#define FULL_SPARSE_MUL_TRANS | ( | RET_TYPE, | |
EL_TYPE, | |||
ZERO, | |||
CONJ_OP | |||
) |
Definition at line 1959 of file Sparse-op-defs.h.
Referenced by mul_herm(), and mul_trans().
#define SPARSE_ALL_OP | ( | DIM | ) |
Definition at line 1684 of file Sparse-op-defs.h.
Referenced by SparseBoolMatrix::all(), SparseMatrix::all(), and SparseComplexMatrix::all().
#define SPARSE_ANY_ALL_OP | ( | DIM, | |
INIT_VAL, | |||
MT_RESULT, | |||
TEST_OP, | |||
TEST_TRUE_VAL | |||
) |
Definition at line 1678 of file Sparse-op-defs.h.
#define SPARSE_ANY_ALL_OP_COL_CODE | ( | TEST_OP, | |
TEST_TRUE_VAL | |||
) |
Definition at line 1671 of file Sparse-op-defs.h.
#define SPARSE_ANY_ALL_OP_ROW_CODE | ( | TEST_OP, | |
TEST_TRUE_VAL | |||
) |
Definition at line 1667 of file Sparse-op-defs.h.
#define SPARSE_ANY_OP | ( | DIM | ) | SPARSE_ANY_ALL_OP (DIM, false, false, !=, true) |
Definition at line 1693 of file Sparse-op-defs.h.
Referenced by SparseMatrix::any(), and SparseComplexMatrix::any().
Definition at line 1527 of file Sparse-op-defs.h.
Referenced by SparseMatrix::sumsq(), and SparseComplexMatrix::sumsq().
#define SPARSE_CUMPROD | ( | RET_TYPE, | |
ELT_TYPE, | |||
FCN | |||
) |
Definition at line 1471 of file Sparse-op-defs.h.
Referenced by SparseMatrix::cumprod(), and SparseComplexMatrix::cumprod().
#define SPARSE_CUMSUM | ( | RET_TYPE, | |
ELT_TYPE, | |||
FCN | |||
) |
Definition at line 1403 of file Sparse-op-defs.h.
Referenced by SparseMatrix::cumsum(), and SparseComplexMatrix::cumsum().
#define SPARSE_FULL_MUL | ( | RET_TYPE, | |
EL_TYPE, | |||
ZERO | |||
) |
Definition at line 1861 of file Sparse-op-defs.h.
Referenced by operator*().
#define SPARSE_FULL_TRANS_MUL | ( | RET_TYPE, | |
EL_TYPE, | |||
ZERO, | |||
CONJ_OP | |||
) |
Definition at line 1893 of file Sparse-op-defs.h.
Referenced by herm_mul(), and trans_mul().
#define SPARSE_MSM_BIN_OP_1 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 984 of file Sparse-op-defs.h.
#define SPARSE_MSM_BIN_OP_2 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 1007 of file Sparse-op-defs.h.
#define SPARSE_MSM_BIN_OPS | ( | R1, | |
R2, | |||
M1, | |||
M2 | |||
) |
Definition at line 1057 of file Sparse-op-defs.h.
#define SPARSE_MSM_BOOL_OP | ( | F, | |
OP, | |||
M1, | |||
M2, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 1127 of file Sparse-op-defs.h.
#define SPARSE_MSM_BOOL_OPS | ( | M1, | |
M2, | |||
ZERO | |||
) | SPARSE_MSM_BOOL_OPS2(M1, M2, ZERO, ZERO) |
Definition at line 1185 of file Sparse-op-defs.h.
#define SPARSE_MSM_BOOL_OPS2 | ( | M1, | |
M2, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 1181 of file Sparse-op-defs.h.
Definition at line 1063 of file Sparse-op-defs.h.
#define SPARSE_MSM_CMP_OPS | ( | M1, | |
Z1, | |||
C1, | |||
M2, | |||
Z2, | |||
C2 | |||
) |
Definition at line 1115 of file Sparse-op-defs.h.
#define SPARSE_MSM_EQNE_OPS | ( | M1, | |
Z1, | |||
C1, | |||
M2, | |||
Z2, | |||
C2 | |||
) |
Definition at line 1123 of file Sparse-op-defs.h.
#define SPARSE_REDUCTION_OP | ( | RET_TYPE, | |
EL_TYPE, | |||
OP, | |||
INIT_VAL, | |||
MT_RESULT | |||
) |
Definition at line 1659 of file Sparse-op-defs.h.
Referenced by SparseMatrix::prod(), SparseComplexMatrix::prod(), SparseMatrix::sum(), and SparseComplexMatrix::sum().
Definition at line 1656 of file Sparse-op-defs.h.
Definition at line 1653 of file Sparse-op-defs.h.
#define SPARSE_SMM_BIN_OP_1 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 1190 of file Sparse-op-defs.h.
#define SPARSE_SMM_BIN_OP_2 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 1221 of file Sparse-op-defs.h.
#define SPARSE_SMM_BIN_OP_2_CHECK_product | ( | ET | ) | do_mx_check (m2, mx_inline_all_finite<ET>) |
Definition at line 1214 of file Sparse-op-defs.h.
#define SPARSE_SMM_BIN_OP_2_CHECK_quotient | ( | ET | ) | ! do_mx_check (m2, mx_inline_any_nan<ET>) && m2.nnz () == m2.numel () |
Definition at line 1218 of file Sparse-op-defs.h.
#define SPARSE_SMM_BIN_OPS | ( | R1, | |
R2, | |||
M1, | |||
M2 | |||
) |
Definition at line 1270 of file Sparse-op-defs.h.
#define SPARSE_SMM_BOOL_OP | ( | F, | |
OP, | |||
M1, | |||
M2, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 1340 of file Sparse-op-defs.h.
#define SPARSE_SMM_BOOL_OPS | ( | M1, | |
M2, | |||
ZERO | |||
) | SPARSE_SMM_BOOL_OPS2(M1, M2, ZERO, ZERO) |
Definition at line 1398 of file Sparse-op-defs.h.
#define SPARSE_SMM_BOOL_OPS2 | ( | M1, | |
M2, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 1394 of file Sparse-op-defs.h.
Definition at line 1276 of file Sparse-op-defs.h.
#define SPARSE_SMM_CMP_OPS | ( | M1, | |
Z1, | |||
C1, | |||
M2, | |||
Z2, | |||
C2 | |||
) |
Definition at line 1328 of file Sparse-op-defs.h.
#define SPARSE_SMM_EQNE_OPS | ( | M1, | |
Z1, | |||
C1, | |||
M2, | |||
Z2, | |||
C2 | |||
) |
Definition at line 1336 of file Sparse-op-defs.h.
Definition at line 37 of file Sparse-op-defs.h.
Definition at line 52 of file Sparse-op-defs.h.
#define SPARSE_SMS_BIN_OPS | ( | R1, | |
R2, | |||
M, | |||
S | |||
) |
Definition at line 74 of file Sparse-op-defs.h.
Definition at line 129 of file Sparse-op-defs.h.
#define SPARSE_SMS_BOOL_OPS | ( | M, | |
S, | |||
ZERO | |||
) | SPARSE_SMS_BOOL_OPS2(M, S, ZERO, ZERO) |
Definition at line 173 of file Sparse-op-defs.h.
#define SPARSE_SMS_BOOL_OPS2 | ( | M, | |
S, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 169 of file Sparse-op-defs.h.
Definition at line 80 of file Sparse-op-defs.h.
#define SPARSE_SMS_CMP_OPS | ( | M, | |
MZ, | |||
CM, | |||
S, | |||
SZ, | |||
CS | |||
) |
Definition at line 117 of file Sparse-op-defs.h.
#define SPARSE_SMS_EQNE_OPS | ( | M, | |
MZ, | |||
CM, | |||
S, | |||
SZ, | |||
CS | |||
) |
Definition at line 125 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BIN_OP_1 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 320 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BIN_OP_2 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 436 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BIN_OP_3 | ( | R, | |
F, | |||
OP, | |||
M1, | |||
M2 | |||
) |
Definition at line 534 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BIN_OPS | ( | R1, | |
R2, | |||
M1, | |||
M2 | |||
) |
Definition at line 654 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BOOL_OP | ( | F, | |
OP, | |||
M1, | |||
M2, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 842 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BOOL_OPS | ( | M1, | |
M2, | |||
ZERO | |||
) | SPARSE_SMSM_BOOL_OPS2(M1, M2, ZERO, ZERO) |
Definition at line 979 of file Sparse-op-defs.h.
#define SPARSE_SMSM_BOOL_OPS2 | ( | M1, | |
M2, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 975 of file Sparse-op-defs.h.
Definition at line 663 of file Sparse-op-defs.h.
#define SPARSE_SMSM_CMP_OPS | ( | M1, | |
Z1, | |||
C1, | |||
M2, | |||
Z2, | |||
C2 | |||
) |
Definition at line 827 of file Sparse-op-defs.h.
#define SPARSE_SMSM_EQNE_OPS | ( | M1, | |
Z1, | |||
C1, | |||
M2, | |||
Z2, | |||
C2 | |||
) |
Definition at line 835 of file Sparse-op-defs.h.
#define SPARSE_SPARSE_MUL | ( | RET_TYPE, | |
RET_EL_TYPE, | |||
EL_TYPE | |||
) |
Definition at line 1695 of file Sparse-op-defs.h.
Referenced by operator*().
Definition at line 178 of file Sparse-op-defs.h.
Definition at line 194 of file Sparse-op-defs.h.
#define SPARSE_SSM_BIN_OPS | ( | R1, | |
R2, | |||
S, | |||
M | |||
) |
Definition at line 216 of file Sparse-op-defs.h.
Definition at line 271 of file Sparse-op-defs.h.
#define SPARSE_SSM_BOOL_OPS | ( | S, | |
M, | |||
ZERO | |||
) | SPARSE_SSM_BOOL_OPS2(S, M, ZERO, ZERO) |
Definition at line 315 of file Sparse-op-defs.h.
#define SPARSE_SSM_BOOL_OPS2 | ( | S, | |
M, | |||
LHS_ZERO, | |||
RHS_ZERO | |||
) |
Definition at line 311 of file Sparse-op-defs.h.
Definition at line 222 of file Sparse-op-defs.h.
#define SPARSE_SSM_CMP_OPS | ( | S, | |
SZ, | |||
SC, | |||
M, | |||
MZ, | |||
MC | |||
) |
Definition at line 259 of file Sparse-op-defs.h.
#define SPARSE_SSM_EQNE_OPS | ( | S, | |
SZ, | |||
SC, | |||
M, | |||
MZ, | |||
MC | |||
) |
Definition at line 267 of file Sparse-op-defs.h.