25 #ifndef __MOTR_SNS_MAT_VEC_H__ 26 #define __MOTR_SNS_MAT_VEC_H__ 244 uint32_t
x, uint32_t y);
288 uint32_t des_row, uint32_t src_row);
M0_INTERNAL void m0_matvec_rows_operate1(struct m0_matvec *v, uint32_t row0, uint32_t row1, m0_matvec_matrix_binary_operator_t f1, m0_parity_elem_t c1, m0_matvec_matrix_binary_operator_t f)
m0_parity_elem_t * m0_matvec_elem_get(const struct m0_matvec *v, uint32_t x)
M0_INTERNAL void m0_matrix_rows_operate(struct m0_matrix *m, uint32_t row0, uint32_t row1, m0_matvec_matrix_binary_operator_t f0, m0_parity_elem_t c0, m0_matvec_matrix_binary_operator_t f1, m0_parity_elem_t c1, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL void m0_matrix_fini(struct m0_matrix *m)
static struct m0_addb2_mach * m
M0_INTERNAL void m0_matrix_rows_operate1(struct m0_matrix *m, uint32_t row0, uint32_t row1, m0_matvec_matrix_binary_operator_t f1, m0_parity_elem_t c1, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL void m0_matrix_col_operate(struct m0_matrix *m, uint32_t col, m0_parity_elem_t c, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL void m0_matrix_swap_row(struct m0_matrix *m, uint32_t r0, uint32_t r1)
M0_INTERNAL void m0_matvec_print(const struct m0_matvec *vec)
M0_INTERNAL int m0_matvec_init(struct m0_matvec *v, uint32_t sz)
M0_INTERNAL bool m0_matrix_is_null(const struct m0_matrix *mat)
M0_INTERNAL void m0_matrix_multiply(const struct m0_matrix *ma, const struct m0_matrix *mb, struct m0_matrix *mc)
M0_INTERNAL void m0_matrix_submatrix_get(const struct m0_matrix *mat, struct m0_matrix *submat, uint32_t x, uint32_t y)
m0_parity_elem_t * mv_vector
M0_INTERNAL void m0_matrix_rows_operate2(struct m0_matrix *m, uint32_t row0, uint32_t row1, m0_matvec_matrix_binary_operator_t f0, m0_parity_elem_t c0, m0_matvec_matrix_binary_operator_t f)
static struct m0_addb2_callback c
M0_INTERNAL void m0_matrix_row_copy(struct m0_matrix *des, const struct m0_matrix *src, uint32_t des_row, uint32_t src_row)
M0_INTERNAL void m0_matrix_vec_multiply(const struct m0_matrix *m, const struct m0_matvec *v, struct m0_matvec *r, m0_matvec_matrix_binary_operator_t mul, m0_matvec_matrix_binary_operator_t add)
M0_INTERNAL void m0_matrix_row_operate(struct m0_matrix *m, uint32_t row, m0_parity_elem_t c, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL void m0_matvec_row_operate(struct m0_matvec *v, uint32_t row, m0_parity_elem_t c, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL void m0_matvec_rows_operate(struct m0_matvec *v, uint32_t row0, uint32_t row1, m0_matvec_matrix_binary_operator_t f0, m0_parity_elem_t c0, m0_matvec_matrix_binary_operator_t f1, m0_parity_elem_t c1, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL bool m0_matrix_is_init(const struct m0_matrix *mat)
m0_parity_elem_t(* m0_matvec_matrix_binary_operator_t)(m0_parity_elem_t, m0_parity_elem_t)
M0_INTERNAL void m0_matvec_fini(struct m0_matvec *v)
M0_INTERNAL void m0_matrix_print(const struct m0_matrix *mat)
M0_INTERNAL void m0_matrix_cols_operate(struct m0_matrix *m, uint32_t col0, uint32_t col1, m0_matvec_matrix_binary_operator_t f0, m0_parity_elem_t c0, m0_matvec_matrix_binary_operator_t f1, m0_parity_elem_t c1, m0_matvec_matrix_binary_operator_t f)
M0_INTERNAL void m0_matvec_rows_operate2(struct m0_matvec *v, uint32_t row0, uint32_t row1, m0_matvec_matrix_binary_operator_t f0, m0_parity_elem_t c0, m0_matvec_matrix_binary_operator_t f)
m0_parity_elem_t ** m_matrix
m0_parity_elem_t * m0_matrix_elem_get(const struct m0_matrix *m, uint32_t x, uint32_t y)
M0_INTERNAL void m0_identity_matrix_fill(struct m0_matrix *identity_mat)
M0_INTERNAL void m0_matvec_swap_row(struct m0_matvec *v, uint32_t r0, uint32_t r1)
struct m0_pdclust_src_addr src
M0_INTERNAL int m0_matrix_init(struct m0_matrix *m, uint32_t w, uint32_t h)
M0_INTERNAL bool m0_matrix_is_square(const struct m0_matrix *mat)
static void add(struct m0_addb2_mach *mach, uint64_t id, int n, const uint64_t *value)